Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/core/filter.c __bpf_redirect() -> dev_is_mac_header_xmit()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read

net/sched/act_mirred.c tcf_blockcast_mirror() -> dev_is_mac_header_xmit()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte

net/sched/act_mirred.c tcf_blockcast_redir() -> dev_is_mac_header_xmit()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-1025,1027-1029,1031-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte

net/sched/act_mirred.c tcf_blockcast_redir() -> dev_is_mac_header_xmit()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte

net/sched/act_mirred.c tcf_mirred_init() -> dev_is_mac_header_xmit()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev->ifindex 1
DATA_SOURCE 0 dev r dev_get_by_index
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->common.tcfa_lock
LOCK2 bh
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct tc_action)->tcfa_lock