Defined in 2 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

net/core/dev_addr_lists_test.c dev_addr_test_snapshot_add_and_remove() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 3728269789371056128
PARAM_VALUE 0 list->list.prev 4096-ptr_max
NOCHECK_CALL
LOCK2 global &rtnl_mutex

net/core/dev_addr_lists_test.c dev_addr_test_snapshot_benchmark() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 8797576489859756032
PARAM_VALUE 0 list->count 0-s32max
PARAM_VALUE 0 list->list.next 4096-ptr_max
PARAM_VALUE 0 list->list.prev 4096-ptr_max
NOCHECK_CALL
LOCK2 global &rtnl_mutex

net/core/dev_addr_lists_test.c dev_addr_test_snapshot_benchmark() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 2190267300191203328
PARAM_VALUE 0 list->list.next 4096-ptr_max
PARAM_VALUE 0 list->list.prev 4096-ptr_max
NOCHECK_CALL
LOCK2 global &rtnl_mutex

net/core/dev_addr_lists_test.c dev_addr_test_snapshot_readd_during_unsync() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 4695834061189619712
PARAM_VALUE 0 list->list.prev 4096-ptr_max
NOCHECK_CALL
LOCK2 global &rtnl_mutex

net/core/dev_addr_lists_test.c dev_addr_test_snapshot_remove_during_sync() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 9035431885910966272
PARAM_VALUE 0 list->list.prev 4096-ptr_max
NOCHECK_CALL
LOCK2 global &rtnl_mutex

net/core/dev_addr_lists_test.c dev_addr_test_snapshot_sync() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 2086513782158385152
PARAM_VALUE 0 list->list.prev 4096-ptr_max
NOCHECK_CALL
LOCK2 global &rtnl_mutex

net/core/dev.c free_netdev() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 4096-ptr_max
NOCHECK_CALL

net/core/dev_addr_lists.c __hw_addr_list_snapshot() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 4096-ptr_max
PARAM_VALUE 0 list->count 0-s32max
PARAM_VALUE 0 list->list.next 4096-ptr_max
PARAM_VALUE 0 list->list.prev 4096-ptr_max
DATA_SOURCE 0 list $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
HALF_LOCKED2 &dev->addr_list_lock
HALF_LOCKED2 &netdev->addr_list_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct net_device)->addr_list_lock

net/core/dev_addr_lists.c dev_addr_flush() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 4096-ptr_max
NOCHECK_CALL

net/core/dev_addr_lists.c dev_mc_flush() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->addr_list_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct net_device)->addr_list_lock

net/core/dev_addr_lists.c dev_uc_flush() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->addr_list_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct net_device)->addr_list_lock

net/core/dev_addr_lists.c netif_addr_lists_snapshot() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 5159063007548923904
PARAM_VALUE 0 list->count 0-s32max
PARAM_VALUE 0 list->list.next 4096-ptr_max
PARAM_VALUE 0 list->list.prev 4096-ptr_max
DATA_SOURCE 0 list $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->addr_list_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct net_device)->addr_list_lock

net/core/dev_addr_lists.c netif_addr_lists_snapshot() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 4187679278119727104
PARAM_VALUE 0 list->count 0-s32max
PARAM_VALUE 0 list->list.next 4096-ptr_max
PARAM_VALUE 0 list->list.prev 4096-ptr_max
DATA_SOURCE 0 list $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->addr_list_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct net_device)->addr_list_lock

net/core/dev_addr_lists.c netif_addr_lists_snapshot() -> __hw_addr_flush()

Type Parameter Key Value
PARAM_VALUE 0 list 5718171334766559232
PARAM_VALUE 0 list->count 0-s32max
PARAM_VALUE 0 list->list.next 4096-ptr_max
PARAM_VALUE 0 list->list.prev 4096-ptr_max
DATA_SOURCE 0 list $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->addr_list_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct net_device)->addr_list_lock