Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/dsa/hirschmann/hellcreek.c hellcreek_devlink_region_fdb_snapshot() -> hellcreek_populate_fdb_entry()

Type Parameter Key Value
PARAM_VALUE 0 hellcreek 4096-ptr_max
PARAM_VALUE 0 hellcreek->fdb_entries 1-480
PARAM_VALUE 0 hellcreek->reg_lock.dep_map->name 0-255
PARAM_VALUE 0 hellcreek->reg_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hellcreek->reg_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hellcreek->reg_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.owner (-1)
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 entry 16,4096-u64max
PARAM_VALUE 2 idx 0-479
BUF_SIZE 0 hellcreek s32min-(-2),1-s32max
BUF_SIZE 0 hellcreek s32min-(-2),1-s32max
BUF_SIZE 1 entry 0-11520,u64max
BUF_SIZE 1 entry 0-11520,u64max
CAPPED_DATA 0 &hellcreek->reg_lock 1
CAPPED_DATA 2 idx 1
CAPPED_DATA 2 idx 1
PARAM_COMPARE 0 hellcreek->fdb_entries > $2
PARAM_COMPARE 2 idx < $0->fdb_entries
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 hellcreek->fdb_entries
NO_OVERFLOW_SIMPLE 1 entry->idx
NO_OVERFLOW_SIMPLE 2 idx
UNITS 0 hellcreek unit_byte
UNITS 2 idx unit_array_size
LOCK2 &region->snapshot_lock
LOCK2 0 &hellcreek->reg_lock
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
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 &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct devlink_region)->snapshot_lock
TYPE_LOCK (struct hellcreek)->reg_lock

drivers/net/dsa/hirschmann/hellcreek.c hellcreek_fdb_dump() -> hellcreek_populate_fdb_entry()

Type Parameter Key Value
PARAM_VALUE 0 hellcreek 4096-ptr_max
PARAM_VALUE 0 hellcreek->fdb_entries 1-480
PARAM_VALUE 0 hellcreek->reg_lock.dep_map->name 0-255
PARAM_VALUE 0 hellcreek->reg_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hellcreek->reg_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hellcreek->reg_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.owner (-1)
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 entry 5466169746983153664
PARAM_VALUE 1 entry->age 0
PARAM_VALUE 1 entry->idx 0
PARAM_VALUE 1 entry->is_obt 0
PARAM_VALUE 1 entry->is_static 0
PARAM_VALUE 1 entry->pass_blocked 0
PARAM_VALUE 1 entry->portmask 0
PARAM_VALUE 1 entry->reprio_en 0
PARAM_VALUE 1 entry->reprio_tc 0
BUF_SIZE 0 hellcreek s32min-(-2),1-s32max
BUF_SIZE 0 hellcreek s32min-(-2),1-s32max
CAPPED_DATA 0 &hellcreek->reg_lock 1
CAPPED_DATA 2 idx 1
CAPPED_DATA 2 idx 1
PARAM_COMPARE 0 hellcreek->fdb_entries > $2
PARAM_COMPARE 2 idx < $0->fdb_entries
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 hellcreek unit_byte
UNITS 2 idx unit_array_size
LOCK2 0 &hellcreek->reg_lock
TYPE_LOCK (struct hellcreek)->reg_lock

drivers/net/dsa/hirschmann/hellcreek.c hellcreek_fdb_get() -> hellcreek_populate_fdb_entry()

Type Parameter Key Value
PARAM_VALUE 0 hellcreek 4096-ptr_max
PARAM_VALUE 0 hellcreek->fdb_entries 1-480
PARAM_VALUE 0 hellcreek->reg_lock.dep_map->name 0-255
PARAM_VALUE 0 hellcreek->reg_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hellcreek->reg_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hellcreek->reg_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.owner (-1)
PARAM_VALUE 0 hellcreek->reg_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 entry 606193952901591040
PARAM_VALUE 1 entry->age 0
PARAM_VALUE 1 entry->idx 0
PARAM_VALUE 1 entry->is_obt 0
PARAM_VALUE 1 entry->is_static 0
PARAM_VALUE 1 entry->pass_blocked 0
PARAM_VALUE 1 entry->portmask 0
PARAM_VALUE 1 entry->reprio_en 0
PARAM_VALUE 1 entry->reprio_tc 0
BUF_SIZE 0 hellcreek s32min-(-2),1-s32max
BUF_SIZE 0 hellcreek s32min-(-2),1-s32max
CAPPED_DATA 2 idx 1
CAPPED_DATA 2 idx 1
DATA_SOURCE 0 hellcreek $0
PARAM_COMPARE 0 hellcreek->fdb_entries > $2
PARAM_COMPARE 2 idx < $0->fdb_entries
NOCHECK_CALL
UNITS 0 hellcreek unit_byte
UNITS 2 idx unit_array_size
LOCK2 0 &hellcreek->reg_lock
HALF_LOCKED2 &dp->addr_lists_lock
TYPE_LOCK (struct hellcreek)->reg_lock