Home
last modified time | relevance | path

Searched refs:rnp (Results 1 – 5 of 5) sorted by relevance

/kernel/rcu/
Dtree_exp.h61 struct rcu_node *rnp; in sync_exp_reset_tree_hotplug() local
73 rcu_for_each_leaf_node(rsp, rnp) { in sync_exp_reset_tree_hotplug()
74 raw_spin_lock_irqsave_rcu_node(rnp, flags); in sync_exp_reset_tree_hotplug()
75 if (rnp->expmaskinit == rnp->expmaskinitnext) { in sync_exp_reset_tree_hotplug()
76 raw_spin_unlock_irqrestore_rcu_node(rnp, flags); in sync_exp_reset_tree_hotplug()
81 oldmask = rnp->expmaskinit; in sync_exp_reset_tree_hotplug()
82 rnp->expmaskinit = rnp->expmaskinitnext; in sync_exp_reset_tree_hotplug()
83 raw_spin_unlock_irqrestore_rcu_node(rnp, flags); in sync_exp_reset_tree_hotplug()
90 mask = rnp->grpmask; in sync_exp_reset_tree_hotplug()
91 rnp_up = rnp->parent; in sync_exp_reset_tree_hotplug()
[all …]
Dtree_plugin.h101 static void rcu_report_exp_rnp(struct rcu_state *rsp, struct rcu_node *rnp,
147 static void rcu_preempt_ctxt_queue(struct rcu_node *rnp, struct rcu_data *rdp) in rcu_preempt_ctxt_queue() argument
148 __releases(rnp->lock) /* But leaves rrupts disabled. */ in rcu_preempt_ctxt_queue()
150 int blkd_state = (rnp->gp_tasks ? RCU_GP_TASKS : 0) + in rcu_preempt_ctxt_queue()
151 (rnp->exp_tasks ? RCU_EXP_TASKS : 0) + in rcu_preempt_ctxt_queue()
152 (rnp->qsmask & rdp->grpmask ? RCU_GP_BLKD : 0) + in rcu_preempt_ctxt_queue()
153 (rnp->expmask & rdp->grpmask ? RCU_EXP_BLKD : 0); in rcu_preempt_ctxt_queue()
174 list_add(&t->rcu_node_entry, &rnp->blkd_tasks); in rcu_preempt_ctxt_queue()
192 list_add_tail(&t->rcu_node_entry, &rnp->blkd_tasks); in rcu_preempt_ctxt_queue()
205 list_add(&t->rcu_node_entry, rnp->exp_tasks); in rcu_preempt_ctxt_queue()
[all …]
Dtree.c160 static void rcu_boost_kthread_setaffinity(struct rcu_node *rnp, int outgoingcpu);
227 unsigned long rcu_rnp_online_cpus(struct rcu_node *rnp) in rcu_rnp_online_cpus() argument
229 return READ_ONCE(rnp->qsmaskinitnext); in rcu_rnp_online_cpus()
422 static bool rcu_start_gp_advanced(struct rcu_state *rsp, struct rcu_node *rnp,
632 struct rcu_node *rnp = rcu_get_root(rsp); in rcu_future_needs_gp() local
633 int idx = (READ_ONCE(rnp->completed) + 1) & 0x1; in rcu_future_needs_gp()
634 int *fp = &rnp->need_future_gp[idx]; in rcu_future_needs_gp()
1099 struct rcu_node *rnp; in rcu_lockdep_current_cpu_online() local
1106 rnp = rdp->mynode; in rcu_lockdep_current_cpu_online()
1107 ret = (rdp->grpmask & rcu_rnp_online_cpus(rnp)) || in rcu_lockdep_current_cpu_online()
[all …]
Dtree.h261 #define leaf_node_cpu_bit(rnp, cpu) (1UL << ((cpu) - (rnp)->grplo)) argument
267 #define rcu_for_each_node_breadth_first(rsp, rnp) \ argument
268 for ((rnp) = &(rsp)->node[0]; \
269 (rnp) < &(rsp)->node[rcu_num_nodes]; (rnp)++)
276 #define rcu_for_each_nonleaf_node_breadth_first(rsp, rnp) \ argument
277 for ((rnp) = &(rsp)->node[0]; \
278 (rnp) < (rsp)->level[rcu_num_lvls - 1]; (rnp)++)
286 #define rcu_for_each_leaf_node(rsp, rnp) \ argument
287 for ((rnp) = (rsp)->level[rcu_num_lvls - 1]; \
288 (rnp) < &(rsp)->node[rcu_num_nodes]; (rnp)++)
[all …]
Dtree_trace.c220 static void print_one_rcu_node_boost(struct seq_file *m, struct rcu_node *rnp) in print_one_rcu_node_boost() argument
223 rnp->grplo, rnp->grphi, in print_one_rcu_node_boost()
224 "T."[list_empty(&rnp->blkd_tasks)], in print_one_rcu_node_boost()
225 "N."[!rnp->gp_tasks], in print_one_rcu_node_boost()
226 "E."[!rnp->exp_tasks], in print_one_rcu_node_boost()
227 "B."[!rnp->boost_tasks], in print_one_rcu_node_boost()
228 convert_kthread_status(rnp->boost_kthread_status), in print_one_rcu_node_boost()
229 rnp->n_tasks_boosted, rnp->n_exp_boosts, in print_one_rcu_node_boost()
230 rnp->n_normal_boosts); in print_one_rcu_node_boost()
233 (int)(rnp->boost_time & 0xffff)); in print_one_rcu_node_boost()
[all …]