Home
last modified time | relevance | path

Searched refs:rsp (Results 1 – 6 of 6) sorted by relevance

/kernel/rcu/
Dtree.c162 static void invoke_rcu_callbacks(struct rcu_state *rsp, struct rcu_data *rdp);
163 static void rcu_report_exp_rdp(struct rcu_state *rsp,
237 static int rcu_gp_in_progress(struct rcu_state *rsp) in rcu_gp_in_progress() argument
239 return READ_ONCE(rsp->completed) != READ_ONCE(rsp->gpnum); in rcu_gp_in_progress()
305 struct rcu_state *rsp; in rcu_momentary_dyntick_idle() local
315 for_each_rcu_flavor(rsp) { in rcu_momentary_dyntick_idle()
316 rdp = raw_cpu_ptr(rsp->rda); in rcu_momentary_dyntick_idle()
317 if (!(resched_mask & rsp->flavor_mask)) in rcu_momentary_dyntick_idle()
422 static bool rcu_start_gp_advanced(struct rcu_state *rsp, struct rcu_node *rnp,
424 static void force_qs_rnp(struct rcu_state *rsp,
[all …]
Dsync.c66 void rcu_sync_lockdep_assert(struct rcu_sync *rsp) in rcu_sync_lockdep_assert() argument
68 RCU_LOCKDEP_WARN(!gp_ops[rsp->gp_type].held(), in rcu_sync_lockdep_assert()
80 void rcu_sync_init(struct rcu_sync *rsp, enum rcu_sync_type type) in rcu_sync_init() argument
82 memset(rsp, 0, sizeof(*rsp)); in rcu_sync_init()
83 init_waitqueue_head(&rsp->gp_wait); in rcu_sync_init()
84 rsp->gp_type = type; in rcu_sync_init()
93 void rcu_sync_enter_start(struct rcu_sync *rsp) in rcu_sync_enter_start() argument
95 rsp->gp_count++; in rcu_sync_enter_start()
96 rsp->gp_state = GP_PASSED; in rcu_sync_enter_start()
114 void rcu_sync_enter(struct rcu_sync *rsp) in rcu_sync_enter() argument
[all …]
Dtree_exp.h24 static void rcu_exp_gp_seq_start(struct rcu_state *rsp) in rcu_exp_gp_seq_start() argument
26 rcu_seq_start(&rsp->expedited_sequence); in rcu_exp_gp_seq_start()
28 static void rcu_exp_gp_seq_end(struct rcu_state *rsp) in rcu_exp_gp_seq_end() argument
30 rcu_seq_end(&rsp->expedited_sequence); in rcu_exp_gp_seq_end()
33 static unsigned long rcu_exp_gp_seq_snap(struct rcu_state *rsp) in rcu_exp_gp_seq_snap() argument
38 s = rcu_seq_snap(&rsp->expedited_sequence); in rcu_exp_gp_seq_snap()
39 trace_rcu_exp_grace_period(rsp->name, s, TPS("snap")); in rcu_exp_gp_seq_snap()
42 static bool rcu_exp_gp_seq_done(struct rcu_state *rsp, unsigned long s) in rcu_exp_gp_seq_done() argument
44 return rcu_seq_done(&rsp->expedited_sequence, s); in rcu_exp_gp_seq_done()
54 static void sync_exp_reset_tree_hotplug(struct rcu_state *rsp) in sync_exp_reset_tree_hotplug() argument
[all …]
Dtree_trace.c63 struct rcu_state *rsp = (struct rcu_state *)m->private; in r_start() local
66 return per_cpu_ptr(rsp->rda, *pos); in r_start()
82 struct rcu_state *rsp = (struct rcu_state *)m->private; in show_rcubarrier() local
84 atomic_read(&rsp->barrier_cpu_count), in show_rcubarrier()
85 rsp->barrier_sequence); in show_rcubarrier()
186 struct rcu_state *rsp = (struct rcu_state *)m->private; in show_rcuexp() local
191 rdp = per_cpu_ptr(rsp->rda, cpu); in show_rcuexp()
198 rsp->expedited_sequence, s0, s1, s2, s3, in show_rcuexp()
199 atomic_long_read(&rsp->expedited_normal), in show_rcuexp()
200 atomic_read(&rsp->expedited_need_qs), in show_rcuexp()
[all …]
Dtree_plugin.h101 static void rcu_report_exp_rnp(struct rcu_state *rsp, struct rcu_node *rnp,
247 rcu_report_exp_rdp(rdp->rsp, rdp, true); in rcu_preempt_ctxt_queue()
310 trace_rcu_preempt_task(rdp->rsp->name, in rcu_preempt_note_context_switch()
533 static void rcu_print_detail_task_stall(struct rcu_state *rsp) in rcu_print_detail_task_stall() argument
535 struct rcu_node *rnp = rcu_get_root(rsp); in rcu_print_detail_task_stall()
538 rcu_for_each_leaf_node(rsp, rnp) in rcu_print_detail_task_stall()
764 static void rcu_print_detail_task_stall(struct rcu_state *rsp) in rcu_print_detail_task_stall() argument
1056 static int rcu_spawn_one_boost_kthread(struct rcu_state *rsp, in rcu_spawn_one_boost_kthread() argument
1059 int rnp_index = rnp - &rsp->node[0]; in rcu_spawn_one_boost_kthread()
1064 if (rcu_state_p != rsp) in rcu_spawn_one_boost_kthread()
[all …]
Dtree.h267 #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)++)
437 struct rcu_state *rsp; member
[all …]