Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

kernel/rcu/tree.c exp_funnel_lock() -> rcu_seq_ctr()

Type Parameter Key Value
PARAM_VALUE 0 s 0,4-u64max
DATA_SOURCE 0 s $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &ssp->srcu_sup->srcu_gp_mutex
HALF_LOCKED2 global &pernet_ops_rwsem

kernel/rcu/tree.c exp_funnel_lock() -> rcu_seq_ctr()

Type Parameter Key Value
PARAM_VALUE 0 s 0,4-u64max
DATA_SOURCE 0 s $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &ssp->srcu_sup->srcu_gp_mutex
HALF_LOCKED2 global &pernet_ops_rwsem

kernel/rcu/tree.c nocb_gp_wait() -> rcu_seq_ctr()

Type Parameter Key Value
PARAM_VALUE 0 s 0,2-u64max
FUZZY_MAX 0 s 0

kernel/rcu/tree.c nocb_gp_wait() -> rcu_seq_ctr()

Type Parameter Key Value
PARAM_VALUE 0 s 0,2-u64max
FUZZY_MAX 0 s 0

kernel/rcu/tree.c print_cpu_stall_info() -> rcu_seq_ctr()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 &(rdp->mynode)->lock
HALF_LOCKED2 &rnp->lock

kernel/rcu/tree.c print_cpu_stall_info() -> rcu_seq_ctr()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 &(rdp->mynode)->lock
HALF_LOCKED2 &rnp->lock

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

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &rcu_state.barrier_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &rcu_state.barrier_mutex
TYPE_LOCK (struct rcu_state)->barrier_lock

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

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &rcu_state.barrier_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &rcu_state.barrier_mutex
TYPE_LOCK (struct rcu_state)->barrier_lock

kernel/rcu/tree.c rcu_exp_wait_wake() -> rcu_seq_ctr()

Type Parameter Key Value
DATA_SOURCE 0 s $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &rcu_state.exp_wake_mutex
HALF_LOCKED2 global &rcu_state.exp_mutex
TYPE_LOCK (struct rcu_state)->exp_wake_mutex

kernel/rcu/tree.c rcu_gp_slow() -> rcu_seq_ctr()

Type Parameter Key Value

kernel/rcu/tree.c rcu_nocb_gp_get() -> rcu_seq_ctr()

Type Parameter Key Value
PREEMPT_ADD
LOCK2 &rnp->lock
LOCK2 irq
TYPE_LOCK (struct rcu_node)->lock

kernel/rcu/tree.c synchronize_rcu_expedited() -> rcu_seq_ctr()

Type Parameter Key Value
PARAM_VALUE 0 s 0,4-u64max
DATA_SOURCE 0 s r rcu_exp_gp_seq_snap
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &rcu_state.exp_mutex
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &ssp->srcu_sup->srcu_gp_mutex
HALF_LOCKED2 global &pernet_ops_rwsem

kernel/rcu/tree.c synchronize_rcu_expedited() -> rcu_seq_ctr()

Type Parameter Key Value
PARAM_VALUE 0 s 0,4-u64max
DATA_SOURCE 0 s r rcu_exp_gp_seq_snap
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &rcu_state.exp_mutex
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &ssp->srcu_sup->srcu_gp_mutex
HALF_LOCKED2 global &pernet_ops_rwsem

kernel/rcu/srcutree.c srcu_funnel_gp_start() -> rcu_seq_ctr()

Type Parameter Key Value
PARAM_VALUE 0 s 0,4-u64max
DATA_SOURCE 0 s $2
RX_PATH
TASK_NOT_RUNNING

kernel/rcu/srcutree.c srcu_gp_end() -> rcu_seq_ctr()

Type Parameter Key Value
DATA_SOURCE 0 s r rcu_seq_current
LOCK2 &ssp->srcu_sup->srcu_gp_mutex
LOCK2 &sup->srcu_cb_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct srcu_usage)->srcu_cb_mutex