Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/xfrm/xfrm_state.c __find_acq_core() -> xfrm_dst_hash()

Type Parameter Key Value
PARAM_VALUE 0 net->xfrm.xfrm_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 daddr 0,4096-ptr_max
PARAM_VALUE 2 saddr 0,4096-ptr_max
BUF_SIZE 1 daddr (-1)-0,4,16
BUF_SIZE 1 daddr (-1)-0,4,16
BUF_SIZE 2 saddr (-1)-0,4,16
BUF_SIZE 2 saddr (-1)-0,4,16
DATA_SOURCE 0 net $0
DATA_SOURCE 1 daddr $8
DATA_SOURCE 2 saddr $9
DATA_SOURCE 3 reqid $4
DATA_SOURCE 4 family $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 daddr->a4 0-u32max
USER_DATA 2 saddr->a4 0-u32max
USER_DATA 3 reqid 0-u32max
USER_DATA 4 family 0-u16max[c]
UNITS 0 net unit_byte
LOCK2 bh
LOCK2 0 &net->xfrm.xfrm_state_lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
TYPE_LOCK (struct netns_xfrm)->xfrm_state_lock

net/xfrm/xfrm_state.c __xfrm_state_bump_genids() -> xfrm_dst_hash()

Type Parameter Key Value
PARAM_VALUE 1 daddr 4096-ptr_max
PARAM_VALUE 2 saddr 4096-ptr_max
NOSPEC 4 family
NOSPEC 4 family
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 daddr->a4 0-u32max
USER_DATA 2 saddr->a4 0-u32max
USER_DATA 3 reqid 0-u32max
USER_DATA 4 family 0-u16max
UNITS 0 net unit_byte
LOCK2 &net->xfrm.xfrm_state_lock
LOCK2 bh
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &xnew->lock
TYPE_LOCK (struct netns_xfrm)->xfrm_state_lock

net/xfrm/xfrm_state.c __xfrm_state_insert() -> xfrm_dst_hash()

Type Parameter Key Value
PARAM_VALUE 0 net->xfrm.state_all.next 4096-ptr_max
PARAM_VALUE 0 net->xfrm.state_all.next->next 4096-ptr_max
PARAM_VALUE 0 net->xfrm.state_all.next->prev 4096-ptr_max
PARAM_VALUE 1 daddr 4096-ptr_max
PARAM_VALUE 2 saddr 4096-ptr_max
NOSPEC 4 family
NOSPEC 4 family
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 daddr->a4 0-u32max
USER_DATA 2 saddr->a4 0-u32max
USER_DATA 3 reqid 0-u32max
USER_DATA 4 family 0-u16max
UNITS 0 net unit_byte
LOCK2 &net->xfrm.xfrm_state_lock
LOCK2 bh
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
TYPE_LOCK (struct netns_xfrm)->xfrm_state_lock

net/xfrm/xfrm_state.c xfrm_migrate_state_find() -> xfrm_dst_hash()

Type Parameter Key Value
PARAM_VALUE 0 net->xfrm.xfrm_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 daddr 4096-ptr_max
PARAM_VALUE 2 saddr 4096-ptr_max
PARAM_VALUE 3 reqid 1-u32max
DATA_SOURCE 0 net $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 reqid 1-u32max
USER_DATA 4 family 0-u16max
UNITS 0 net unit_byte
LOCK2 bh
LOCK2 0 &net->xfrm.xfrm_state_lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
TYPE_LOCK (struct netns_xfrm)->xfrm_state_lock

net/xfrm/xfrm_state.c xfrm_state_find() -> xfrm_dst_hash()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->xfrm.state_all.next 4096-ptr_max
PARAM_VALUE 0 net->xfrm.state_all.next->next 4096-ptr_max
PARAM_VALUE 0 net->xfrm.state_all.next->prev 4096-ptr_max
PARAM_VALUE 0 net->xfrm.xfrm_state_lock.rlock.dep_map->name 0-255
BUF_SIZE 1 daddr (-1),4,16
BUF_SIZE 1 daddr (-1),4,16
BUF_SIZE 2 saddr (-1),4,16
BUF_SIZE 2 saddr (-1),4,16
DATA_SOURCE 1 daddr $0
DATA_SOURCE 2 saddr $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 0 net unit_byte
LOCK2 bh
LOCK2 rcu_read
LOCK2 0 &net->xfrm.xfrm_state_lock
TYPE_LOCK (struct netns_xfrm)->xfrm_state_lock

net/xfrm/xfrm_state.c xfrm_stateonly_find() -> xfrm_dst_hash()

Type Parameter Key Value
PARAM_VALUE 0 net->xfrm.xfrm_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 daddr 4096-ptr_max
PARAM_VALUE 2 saddr 4096-ptr_max
PARAM_VALUE 3 reqid 0
PARAM_VALUE 4 family 2
BUF_SIZE 1 daddr 4
BUF_SIZE 1 daddr 4
BUF_SIZE 2 saddr 4
BUF_SIZE 2 saddr 4
DATA_SOURCE 0 net $0
DATA_SOURCE 1 daddr $3
DATA_SOURCE 2 saddr $4
DATA_SOURCE 3 reqid $8
DATA_SOURCE 4 family $5
PREEMPT_ADD <- disables preempt
LOCK2 bh
LOCK2 0 &net->xfrm.xfrm_state_lock
TYPE_LOCK (struct netns_xfrm)->xfrm_state_lock