Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/mac80211/iface.c ieee80211_set_multicast_list() -> __hw_addr_sync()

Type Parameter Key Value
PARAM_VALUE 0 to_list 4096-ptr_max
PARAM_VALUE 1 from_list 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 addr_len unit_byte
LOCK2 &local->filter_lock
LOCK2 bh
HALF_LOCKED2 &dev->addr_list_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct ieee80211_local)->filter_lock

net/core/dev_addr_lists.c dev_mc_sync() -> __hw_addr_sync()

Type Parameter Key Value
PARAM_VALUE 0 to_list 4096-ptr_max
PARAM_VALUE 1 from_list 4096-ptr_max
CAPPED_DATA 2 addr_len 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 2 addr_len unit_byte
LOCK2 &to->addr_list_lock
HALF_LOCKED2 &from->addr_list_lock
HALF_LOCKED2 bh
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct net_device)->addr_list_lock

net/core/dev_addr_lists.c dev_uc_sync() -> __hw_addr_sync()

Type Parameter Key Value
PARAM_VALUE 0 to_list 4096-ptr_max
PARAM_VALUE 1 from_list 4096-ptr_max
CAPPED_DATA 2 addr_len 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 2 addr_len unit_byte
LOCK2 &to->addr_list_lock
HALF_LOCKED2 &from->addr_list_lock
HALF_LOCKED2 bh
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct net_device)->addr_list_lock