Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

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

Type Parameter Key Value
PREEMPT_ADD
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 poll_state_synchronize_rcu_full_unordered() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

kernel/rcu/tree.c print_cpu_stall() -> rcu_get_root()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

kernel/rcu/tree.c print_other_cpu_stall() -> rcu_get_root()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

kernel/rcu/tree.c rcu_check_gp_start_stall() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
HALF_LOCKED2 global &rcu_fwd_mutex

kernel/rcu/tree.c rcu_gp_cleanup() -> rcu_get_root()

Type Parameter Key Value

kernel/rcu/tree.c rcu_gp_cleanup() -> rcu_get_root()

Type Parameter Key Value

kernel/rcu/tree.c rcu_gp_fqs() -> rcu_get_root()

Type Parameter Key Value

kernel/rcu/tree.c rcu_gp_fqs_check_wake() -> rcu_get_root()

Type Parameter Key Value

kernel/rcu/tree.c rcu_gp_fqs_loop() -> rcu_get_root()

Type Parameter Key Value

kernel/rcu/tree.c rcu_gp_init() -> rcu_get_root()

Type Parameter Key Value

kernel/rcu/tree.c rcu_poll_gp_seq_end() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &rnp->lock
HALF_LOCKED2 irq

kernel/rcu/tree.c rcu_poll_gp_seq_end_unlocked() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rcu_state.exp_wake_mutex

kernel/rcu/tree.c rcu_poll_gp_seq_start() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &rnp->lock
HALF_LOCKED2 irq

kernel/rcu/tree.c rcu_poll_gp_seq_start_unlocked() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rcu_state.exp_mutex

kernel/rcu/tree.c rcu_report_qs_rsp() -> rcu_get_root()

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

kernel/rcu/tree.c rcu_report_qs_rsp() -> rcu_get_root()

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

kernel/rcu/tree.c rcu_report_qs_rsp() -> rcu_get_root()

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

kernel/rcu/tree.c rcu_spawn_exp_par_gp_kworker() -> rcu_get_root()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rnp->kthread_mutex
TYPE_LOCK (struct rcu_node)->kthread_mutex

kernel/rcu/tree.c rcu_spawn_gp_kthread() -> rcu_get_root()

Type Parameter Key Value

kernel/rcu/tree.c rcu_spawn_one_boost_kthread() -> rcu_get_root()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rnp->kthread_mutex
TYPE_LOCK (struct rcu_node)->kthread_mutex

kernel/rcu/tree.c rcutree_prepare_cpu() -> rcu_get_root()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

kernel/rcu/tree.c show_rcu_state() -> rcu_get_root()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rcu_fwd_mutex
HALF_LOCKED2 rcu_read

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

Type Parameter Key Value
PREEMPT_ADD
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_stall() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rcu_state.exp_mutex

kernel/rcu/tree.c synchronize_rcu_expedited_wait_once() -> rcu_get_root()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rcu_state.exp_mutex