Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/xfrm/xfrm_policy.c xfrm_hash_rebuild() -> xfrm_policy_inexact_insert()

Type Parameter Key Value
PARAM_VALUE 0 policy 4096-ptr_max
PARAM_VALUE 0 policy->bydst->next->pprev 1-u64max
PARAM_VALUE 0 policy->walk.dead 0
PARAM_VALUE 1 dir 0-7
PARAM_VALUE 2 excl 0
CAPPED_DATA 0 &policy->walk.all 1
CAPPED_DATA 1 dir 1
DATA_SOURCE 1 dir r xfrm_policy_id2dir
PREEMPT_ADD <- disables preempt
LOCK2 &net->xfrm.xfrm_policy_lock
LOCK2 bh
LOCK2 global &hash_resize_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct netns_xfrm)->xfrm_policy_lock

net/xfrm/xfrm_policy.c xfrm_policy_insert() -> xfrm_policy_inexact_insert()

Type Parameter Key Value
PARAM_VALUE 0 policy 4096-ptr_max
PARAM_VALUE 0 policy->action 0-1
PARAM_VALUE 0 policy->bydst.next 0
PARAM_VALUE 0 policy->bydst.pprev 0
PARAM_VALUE 0 policy->byidx.next 0
PARAM_VALUE 0 policy->byidx.pprev 0
PARAM_VALUE 0 policy->family 0,2,10
PARAM_VALUE 0 policy->lock.magic 3736018669
PARAM_VALUE 0 policy->lock.owner (-1)
PARAM_VALUE 0 policy->lock.owner_cpu u32max
PARAM_VALUE 0 policy->polq.hold_queue.next 4096-ptr_max
PARAM_VALUE 0 policy->polq.hold_queue.prev 4096-ptr_max
PARAM_VALUE 0 policy->polq.hold_queue.qlen 0
PARAM_VALUE 0 policy->polq.hold_timer.entry.pprev 0
PARAM_VALUE 0 policy->polq.hold_timer.flags 0-4194302
PARAM_VALUE 0 policy->polq.hold_timer.lockdep_map->name 0-255
PARAM_VALUE 0 policy->refcnt.refs.counter 1
PARAM_VALUE 0 policy->selector.family 0,2,10
PARAM_VALUE 0 policy->timer.entry.pprev 0
PARAM_VALUE 0 policy->timer.flags 0-4194302
PARAM_VALUE 0 policy->timer.lockdep_map->name 0-255
PARAM_VALUE 0 policy->walk.all.next 4096-ptr_max
PARAM_VALUE 0 policy->walk.all.next->next 4096-ptr_max
PARAM_VALUE 0 policy->walk.all.prev 4096-ptr_max
PARAM_VALUE 0 policy->walk.all.prev->next 4096-ptr_max
PARAM_VALUE 0 policy->walk.all.prev->prev 4096-ptr_max
PARAM_VALUE 0 policy->xfrm_nr 0-6
PARAM_VALUE 0 policy->xp_net.net->xfrm.xfrm_policy_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 dir 0-2
PARAM_VALUE 2 excl 0-1
BUF_SIZE 0 policy 1064
CAPPED_DATA 0 policy->xp_net.net 1
CAPPED_DATA 1 dir 1
DATA_SOURCE 0 policy $1
DATA_SOURCE 1 dir $0
DATA_SOURCE 2 excl $2
FUZZY_MAX 0 policy->action 1
FUZZY_MAX 0 policy->xfrm_nr 0
FUZZY_MAX 2 excl 1
NOSPEC 1 dir
NOSPEC 1 dir
HARD_MAX 2 excl 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 policy->action 0-1
USER_DATA 0 policy->family 2,10
USER_DATA 0 policy->flags 0-255
USER_DATA 0 policy->index 0-u32max
USER_DATA 0 policy->lft.hard_add_expires_seconds 0-u64max
USER_DATA 0 policy->lft.hard_byte_limit 0-u64max
USER_DATA 0 policy->lft.hard_packet_limit 0-u64max
USER_DATA 0 policy->lft.hard_use_expires_seconds 0-u64max
USER_DATA 0 policy->lft.soft_add_expires_seconds 0-u64max
USER_DATA 0 policy->lft.soft_byte_limit 0-u64max
USER_DATA 0 policy->lft.soft_packet_limit 0-u64max
USER_DATA 0 policy->lft.soft_use_expires_seconds 0-u64max
USER_DATA 0 policy->priority 0-u32max
USER_DATA 0 policy->selector.dport 0-u16max
USER_DATA 0 policy->selector.dport_mask 0-u16max
USER_DATA 0 policy->selector.family 2,10
USER_DATA 0 policy->selector.ifindex s32min-s32max
USER_DATA 0 policy->selector.prefixlen_d 0-128
USER_DATA 0 policy->selector.prefixlen_s 0-128
USER_DATA 0 policy->selector.proto 0-255
USER_DATA 0 policy->selector.sport 0-u16max
USER_DATA 0 policy->selector.sport_mask 0-u16max
USER_DATA 0 policy->selector.user 0-u32max
USER_DATA 0 policy->type 0-1
USER_DATA 0 policy->xfrm_nr 1-6[c]
USER_DATA 1 dir 0-2[c]
USER_DATA 2 excl 0[c]
LOCK2 &net->xfrm.xfrm_policy_lock
LOCK2 bh
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
TYPE_LOCK (struct netns_xfrm)->xfrm_policy_lock