Defined in 2 files as a function:

Referenced in 3 files:

Smatch caller information:

net/core/filter.c __bpf_tx_skb() -> dev_xmit_recursion()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

net/core/filter.c bpf_out_neigh_v4() -> dev_xmit_recursion()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/core/filter.c bpf_out_neigh_v6() -> dev_xmit_recursion()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/core/lwtunnel.c lwtunnel_input() -> dev_xmit_recursion()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/core/lwtunnel.c lwtunnel_output() -> dev_xmit_recursion()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 rcu_read

net/core/lwtunnel.c lwtunnel_xmit() -> dev_xmit_recursion()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 &net->ipv4.mfc_mutex
HALF_LOCKED2 &net->ipv6.mfc_mutex
HALF_LOCKED2 &sk->sk_callback_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk