Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

net/rxrpc/io_thread.c rxrpc_input_packet() -> rxrpc_get_peer_maybe()

Type Parameter Key Value
PARAM_VALUE 1 why 6
DATA_SOURCE 0 peer r rxrpc_lookup_peer_rcu
LOCK2 rcu_read

net/rxrpc/peer_event.c rxrpc_input_error() -> rxrpc_get_peer_maybe()

Type Parameter Key Value
PARAM_VALUE 0 peer 4096-ptr_max
PARAM_VALUE 1 why 7
DATA_SOURCE 0 peer r rxrpc_lookup_peer_local_rcu
LOCK2 rcu_read

net/rxrpc/peer_event.c rxrpc_peer_keepalive_dispatch() -> rxrpc_get_peer_maybe()

Type Parameter Key Value
PARAM_VALUE 0 peer 4096-ptr_max
PARAM_VALUE 1 why 8
PREEMPT_ADD <- disables preempt
LOCK2 &rxnet->peer_hash_lock
LOCK2 bh
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rxrpc_net)->peer_hash_lock

net/rxrpc/peer_object.c rxrpc_lookup_peer() -> rxrpc_get_peer_maybe()

Type Parameter Key Value
PARAM_VALUE 0 peer 4096-ptr_max
PARAM_VALUE 0 peer->ref.refs.counter s32min-(-1),1-s32max
PARAM_VALUE 1 why 9
DATA_SOURCE 0 peer r __rxrpc_lookup_peer_rcu
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &rx->sk

net/rxrpc/peer_object.c rxrpc_lookup_peer() -> rxrpc_get_peer_maybe()

Type Parameter Key Value
PARAM_VALUE 0 peer 4096-ptr_max
PARAM_VALUE 0 peer->ref.refs.counter s32min-(-1),1-s32max
PARAM_VALUE 1 why 9
DATA_SOURCE 0 peer r __rxrpc_lookup_peer_rcu
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rxnet->peer_hash_lock
LOCK2 bh
HALF_LOCKED2 &rx->sk
TYPE_LOCK (struct rxrpc_net)->peer_hash_lock

net/rxrpc/call_accept.c rxrpc_alloc_incoming_call() -> rxrpc_get_peer_maybe()

Type Parameter Key Value
PARAM_VALUE 0 peer 1-u64max
PARAM_VALUE 0 peer->local->io_thread->sched_class->set_cpus_allowed 0,1927640468783054848,5094656021401329664,7127180339355369472
PARAM_VALUE 1 why 10
DATA_SOURCE 0 peer $2
PREEMPT_ADD
LOCK2 &local->services_lock
LOCK2 &rx->incoming_lock
LOCK2 irq
TYPE_LOCK (struct rxrpc_local)->services_lock
TYPE_LOCK (struct rxrpc_sock)->incoming_lock