Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/key/af_key.c xfrm_addr_equal() -> xfrm6_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 (-1)-0,4,16
BUF_SIZE 1 b (-1)-0,4,16
DATA_SOURCE 0 a $0
DATA_SOURCE 1 b $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 a->a4 0-u32max
USER_DATA 1 b->a4 0-u32max
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex

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

Type Parameter Key Value
PARAM_VALUE 0 a 188,332,4096-ptr_max
BUF_SIZE 1 b (-1)-0,4,16
BUF_SIZE 1 b (-1)-0,4,16
DATA_SOURCE 0 a $0
DATA_SOURCE 1 b $1
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/ipv6/xfrm6_tunnel.c __xfrm6_tunnel_spi_lookup() -> xfrm6_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
BUF_SIZE 1 b (-1),16
BUF_SIZE 1 b (-1),16
DATA_SOURCE 1 b $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 b->a4 0-u32max
HALF_LOCKED2 bh
HALF_LOCKED2 global &xfrm6_tunnel_spi_lock
HALF_LOCKED2 rcu_read

net/ipv6/xfrm6_tunnel.c xfrm6_tunnel_free_spi() -> xfrm6_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
DATA_SOURCE 1 b $1
PREEMPT_ADD <- disables preempt
LOCK2 bh
LOCK2 global &xfrm6_tunnel_spi_lock
HALF_LOCKED2 &pool->lock

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

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
BUF_SIZE 1 b (-1),16
BUF_SIZE 1 b (-1),16
DATA_SOURCE 0 a $0
DATA_SOURCE 1 b $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 a->a4 0-u32max
USER_DATA 1 b->a4 0-u32max
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &pool->lock
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 xfrm_addr_equal() -> xfrm6_addr_equal()

Type Parameter Key Value
PARAM_VALUE 0 a 4096-ptr_max
PARAM_VALUE 1 b 4096-ptr_max
DATA_SOURCE 0 a $0
DATA_SOURCE 1 b $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

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

Type Parameter Key Value
PARAM_VALUE 1 b 4096-ptr_max
BUF_SIZE 0 a 4
BUF_SIZE 0 a 4
DATA_SOURCE 0 a $0
DATA_SOURCE 1 b $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

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

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