Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

kernel/rcu/tree.c __call_rcu_nocb_wake() -> rcu_nocb_unlock()

Type Parameter Key Value
PARAM_VALUE 0 rdp 4096-ptr_max
PARAM_VALUE 0 rdp->cpu 0-64
DATA_SOURCE 0 rdp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 0 &rdp->nocb_lock

kernel/rcu/tree.c __call_rcu_nocb_wake() -> rcu_nocb_unlock()

Type Parameter Key Value
PARAM_VALUE 0 rdp 4096-ptr_max
PARAM_VALUE 0 rdp->cpu 0-64
PARAM_VALUE 0 rdp->nocb_gp_kthread 1-u64max
DATA_SOURCE 0 rdp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 0 &rdp->nocb_lock

kernel/rcu/tree.c __call_rcu_nocb_wake() -> rcu_nocb_unlock()

Type Parameter Key Value
PARAM_VALUE 0 rdp 4096-ptr_max
PARAM_VALUE 0 rdp->cpu 0-64
PARAM_VALUE 0 rdp->nocb_gp_kthread 1-u64max
DATA_SOURCE 0 rdp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 0 &rdp->nocb_lock

kernel/rcu/tree.c rcu_barrier_entrain() -> rcu_nocb_unlock()

Type Parameter Key Value
PARAM_VALUE 0 rdp 4096-ptr_max
PARAM_VALUE 0 rdp->cpu 0-64
PARAM_VALUE 0 rdp->nocb_gp_rdp->nocb_defer_wakeup s32min-3
PARAM_VALUE 0 rdp->nocb_gp_rdp->nocb_gp_sleep 0-1
CAPPED_DATA 0 &rdp->barrier_head 1
DATA_SOURCE 0 rdp $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rcu_state.barrier_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &rcu_state.barrier_mutex
HALF_LOCKED2 0 &rdp->nocb_lock
TYPE_LOCK (struct rcu_state)->barrier_lock

kernel/rcu/tree.c rcu_nocb_try_bypass() -> rcu_nocb_unlock()

Type Parameter Key Value
PARAM_VALUE 0 rdp 4096-ptr_max
PARAM_VALUE 0 rdp->cpu 0-64
PARAM_VALUE 0 rdp->mynode 4096-ptr_max
PARAM_VALUE 0 rdp->nocb_bypass->tail 0
PARAM_VALUE 0 rdp->nocb_bypass.len (-9223372036854775807)-s64max
PARAM_VALUE 0 rdp->nocb_bypass.tail 4096-ptr_max
PARAM_VALUE 0 rdp->nocb_bypass_lock.dep_map->name 0-255
PARAM_VALUE 0 rdp->nocb_bypass_lock.owner (-1)
PARAM_VALUE 0 rdp->nocb_bypass_lock.owner_cpu u32max
CAPPED_DATA 0 rdp->nocb_nobypass_count 1
DATA_SOURCE 0 rdp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &rdp->nocb_lock

kernel/rcu/tree.c rcutree_migrate_callbacks() -> rcu_nocb_unlock()

Type Parameter Key Value
PARAM_VALUE 0 rdp 4096-ptr_max
PARAM_VALUE 0 rdp->cpu 0-64
PARAM_VALUE 0 rdp->mynode 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &my_rnp->lock
LOCK2 flags
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq
HALF_LOCKED2 0 &rdp->nocb_lock
TYPE_LOCK (struct rcu_node)->lock