Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

kernel/rcu/tree.c __rcu_report_exp_rnp() -> sync_rcu_exp_done()

Type Parameter Key Value
PARAM_VALUE 0 rnp 4096-ptr_max
PARAM_VALUE 0 rnp->lock.dep_map->name 0-255
PARAM_VALUE 0 rnp->lock.owner_cpu 0
PARAM_VALUE 0 rnp->lock.raw_lock.val.counter 0-s32max
CAPPED_DATA 0 rnp->expmask 1
DATA_SOURCE 0 rnp $0 [m]
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &rnp->lock
HALF_LOCKED2 0 &rnp->parent->lock
TYPE_LOCK (struct rcu_node)->lock

kernel/rcu/tree.c rcu_preempt_deferred_qs_irqrestore() -> sync_rcu_exp_done()

Type Parameter Key Value
PARAM_VALUE 0 rnp 4096-ptr_max
PARAM_VALUE 0 rnp->lock.dep_map->name 0-255
PARAM_VALUE 0 rnp->lock.owner_cpu 0
PARAM_VALUE 0 rnp->lock.raw_lock.val.counter 0-s32max
CAPPED_DATA 0 rnp 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &rnp->lock
TYPE_LOCK (struct rcu_node)->lock

kernel/rcu/tree.c rcu_preempt_deferred_qs_irqrestore() -> sync_rcu_exp_done()

Type Parameter Key Value
PARAM_VALUE 0 rnp 4096-ptr_max
PARAM_VALUE 0 rnp->lock.dep_map->name 0-255
PARAM_VALUE 0 rnp->lock.owner_cpu 0
PARAM_VALUE 0 rnp->lock.raw_lock.val.counter 0-s32max
CAPPED_DATA 0 rnp 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &rnp->lock
TYPE_LOCK (struct rcu_node)->lock

kernel/rcu/tree.c sync_rcu_exp_done_unlocked() -> sync_rcu_exp_done()

Type Parameter Key Value
PARAM_VALUE 0 rnp 4096-ptr_max
PARAM_VALUE 0 rnp->lock.dep_map->name 0-255
PARAM_VALUE 0 rnp->lock.owner_cpu 0
PARAM_VALUE 0 rnp->lock.raw_lock.val.counter 0-s32max
BUF_SIZE 0 rnp (-1),6402048
BUF_SIZE 0 rnp (-1),6402048
CAPPED_DATA 0 rnp 1
DATA_SOURCE 0 rnp $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &rnp->lock
HALF_LOCKED2 global &rcu_state.exp_mutex
TYPE_LOCK (struct rcu_node)->lock