Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

net/key/af_key.c __pfkey_xfrm_state2msg() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
NOSPEC 2 family
NOSPEC 2 family
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 a->a4 0-u32max
USER_DATA 1 b->a4 0-u32max
USER_DATA 2 family 2,10[c]
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &x->lock
HALF_LOCKED2 rcu_read

net/key/af_key.c __pfkey_xfrm_state2msg() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2,10
NOSPEC 2 family
NOSPEC 2 family
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 a->a4 0-u32max
USER_DATA 1 b->a4 0-u32max
USER_DATA 2 family 2,10[c]
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &x->lock
HALF_LOCKED2 rcu_read

net/key/af_key.c pfkey_getspi() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 0,4096-ptr_max
BUF_SIZE 1 b 0,4,16
BUF_SIZE 1 b 0,4,16
RX_PATH
TASK_NOT_RUNNING
LOCK2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk
TYPE_LOCK (struct netns_xfrm)->xfrm_cfg_mutex

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

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
PARAM_VALUE 1 b 0,4096-ptr_max
BUF_SIZE 1 b (-1)-0,4,16
BUF_SIZE 1 b (-1)-0,4,16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $8
DATA_SOURCE 2 family $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
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 __find_acq_core() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 332,4096-ptr_max
PARAM_VALUE 1 b 0,4096-ptr_max
PARAM_VALUE 2 family 2,10
BUF_SIZE 1 b (-1)-0,4,16
BUF_SIZE 1 b (-1)-0,4,16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $9
DATA_SOURCE 2 family $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
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_state_bump_genids() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
CAPPED_DATA 2 family 1
NOSPEC 2 family
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
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_bump_genids() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 332,4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2,10
CAPPED_DATA 2 family 1
NOSPEC 2 family
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
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_lookup() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
BUF_SIZE 1 b (-1),4,16
BUF_SIZE 1 b (-1),4,16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $2
DATA_SOURCE 2 family $5
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
HALF_LOCKED2 &net->xfrm.xfrm_state_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/xfrm/xfrm_state.c __xfrm_state_lookup_all() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
BUF_SIZE 1 b (-1),4,16
BUF_SIZE 1 b (-1),4,16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $2
DATA_SOURCE 2 family $5
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

net/xfrm/xfrm_state.c __xfrm_state_lookup_byaddr() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
BUF_SIZE 1 b (-1),16
BUF_SIZE 1 b (-1),16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $2
DATA_SOURCE 2 family $5
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
HALF_LOCKED2 &net->xfrm.xfrm_state_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/xfrm/xfrm_state.c __xfrm_state_lookup_byaddr() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 332,4096-ptr_max
PARAM_VALUE 2 family 2,10
BUF_SIZE 1 b (-1),16
BUF_SIZE 1 b (-1),16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $3
DATA_SOURCE 2 family $5
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
USER_PTR 1 b
USER_PTR 1 b->a6
HALF_LOCKED2 &net->xfrm.xfrm_state_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/xfrm/xfrm_state.c xfrm_input_state_lookup() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
BUF_SIZE 1 b (-1),4,16
BUF_SIZE 1 b (-1),4,16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $2
DATA_SOURCE 2 family $5
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 family 0-u16max
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_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 332,4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2,10
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 family 2,10
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_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 family 0-u16max
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_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 332,4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2,10
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 family 2,10
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_state_add() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
CAPPED_DATA 2 family 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
USER_DATA 2 family 0-u16max[c]
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_state_find() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
BUF_SIZE 1 b (-1),4,16
BUF_SIZE 1 b (-1),4,16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

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

Type Parameter Key Value
PARAM_VALUE 0 a 188,4096-ptr_max
BUF_SIZE 1 b (-1),4,16
BUF_SIZE 1 b (-1),4,16
CAPPED_DATA 2 family 1
DATA_SOURCE 1 b $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

net/xfrm/xfrm_state.c xfrm_state_migrate_install() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
CAPPED_DATA 2 family 1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
USER_DATA 2 family 0-u16max
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex

net/xfrm/xfrm_user.c xfrm_alloc_userspi() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
BUF_SIZE 1 b 16
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

net/xfrm/xfrm_user.c xfrm_do_migrate_state() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
CAPPED_DATA 2 family 1
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

net/xfrm/xfrm_user.c xfrm_do_migrate_state() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2,10
CAPPED_DATA 2 family 1
FUZZY_MAX 2 family 10
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

net/xfrm/xfrm_user.c xfrm_do_migrate_state() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 7385649335734165536
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2,10
CAPPED_DATA 2 family 1
NOSPEC 2 family
NOSPEC 2 family
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 a->a4 0-u32max
USER_DATA 1 b->a4 0-u32max
USER_DATA 2 family 2,10[c]
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

net/ipv6/ip6_vti.c vti6_state_check() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 10
DATA_SOURCE 0 a $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/ipv4/ip_vti.c vti_state_check() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2
BUF_SIZE 0 a 4
BUF_SIZE 0 a 4
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/xfrm/xfrm_policy.c migrate_tmpl_match() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 family 0-u16max
LOCK2 &pol->lock
LOCK2 bh
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
TYPE_LOCK (struct xfrm_policy)->lock

net/xfrm/xfrm_policy.c migrate_tmpl_match() -> xfrm_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
PARAM_VALUE 2 family 2,10
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 family 2,10
LOCK2 &pol->lock
LOCK2 bh
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
TYPE_LOCK (struct xfrm_policy)->lock