Searched refs:rcu_data (Results 1 – 9 of 9) sorted by relevance
/Linux-v5.10/kernel/rcu/ |
D | tree_plugin.h | 134 static void rcu_preempt_ctxt_queue(struct rcu_node *rnp, struct rcu_data *rdp) in rcu_preempt_ctxt_queue() 266 if (__this_cpu_read(rcu_data.cpu_no_qs.s)) { in rcu_qs() 268 __this_cpu_read(rcu_data.gp_seq), in rcu_qs() 270 __this_cpu_write(rcu_data.cpu_no_qs.b.norm, false); in rcu_qs() 292 struct rcu_data *rdp = this_cpu_ptr(&rcu_data); in rcu_note_context_switch() 446 struct rcu_data *rdp; in rcu_preempt_deferred_qs_irqrestore() 456 rdp = this_cpu_ptr(&rcu_data); in rcu_preempt_deferred_qs_irqrestore() 560 return (__this_cpu_read(rcu_data.exp_deferred_qs) || in rcu_preempt_need_deferred_qs() 587 struct rcu_data *rdp; in rcu_preempt_deferred_qs_handler() 589 rdp = container_of(iwp, struct rcu_data, defer_qs_iw); in rcu_preempt_deferred_qs_handler() [all …]
|
D | tree.h | 150 struct rcu_data { struct 228 struct rcu_data *nocb_next_cb_rdp; argument 232 struct rcu_data *nocb_gp_rdp ____cacheline_internodealigned_in_smp; argument 423 static void zero_cpu_stall_ticks(struct rcu_data *rdp); 427 static bool rcu_nocb_flush_bypass(struct rcu_data *rdp, struct rcu_head *rhp, 429 static bool rcu_nocb_try_bypass(struct rcu_data *rdp, struct rcu_head *rhp, 431 static void __call_rcu_nocb_wake(struct rcu_data *rdp, bool was_empty, 433 static int rcu_nocb_need_deferred_wakeup(struct rcu_data *rdp); 434 static void do_nocb_deferred_wakeup(struct rcu_data *rdp); 435 static void rcu_boot_init_nocb_percpu_data(struct rcu_data *rdp); [all …]
|
D | tree.c | 82 static DEFINE_PER_CPU_SHARED_ALIGNED(struct rcu_data, rcu_data) = { 151 static void rcu_report_exp_rdp(struct rcu_data *rdp); 153 static void check_cb_ovld_locked(struct rcu_data *rdp, struct rcu_node *rnp); 228 struct rcu_data *rdp = per_cpu_ptr(&rcu_data, cpu); in rcu_get_n_cbs_cpu() 249 struct rcu_data *rdp = this_cpu_ptr(&rcu_data); in rcu_dynticks_eqs_enter() 274 struct rcu_data *rdp = this_cpu_ptr(&rcu_data); in rcu_dynticks_eqs_exit() 305 struct rcu_data *rdp = this_cpu_ptr(&rcu_data); in rcu_dynticks_eqs_online() 319 struct rcu_data *rdp = this_cpu_ptr(&rcu_data); in rcu_dynticks_curr_cpu_in_eqs() 328 static int rcu_dynticks_snap(struct rcu_data *rdp) in rcu_dynticks_snap() 349 static bool rcu_dynticks_in_eqs_since(struct rcu_data *rdp, int snap) in rcu_dynticks_in_eqs_since() [all …]
|
D | tree_exp.h | 235 struct rcu_data *rdp; in rcu_report_exp_cpu_mult() 244 rdp = per_cpu_ptr(&rcu_data, cpu); in rcu_report_exp_cpu_mult() 256 static void rcu_report_exp_rdp(struct rcu_data *rdp) in rcu_report_exp_rdp() 282 struct rcu_data *rdp = per_cpu_ptr(&rcu_data, raw_smp_processor_id()); in exp_funnel_lock() 353 struct rcu_data *rdp = per_cpu_ptr(&rcu_data, cpu); in sync_rcu_exp_select_node_cpus() 381 struct rcu_data *rdp = per_cpu_ptr(&rcu_data, cpu); in sync_rcu_exp_select_node_cpus() 493 struct rcu_data *rdp; in synchronize_rcu_expedited_wait() 505 rdp = per_cpu_ptr(&rcu_data, cpu); in synchronize_rcu_expedited_wait() 530 struct rcu_data *rdp; in synchronize_rcu_expedited_wait() 536 rdp = per_cpu_ptr(&rcu_data, cpu); in synchronize_rcu_expedited_wait() [all …]
|
D | tree_stall.h | 146 static void zero_cpu_stall_ticks(struct rcu_data *rdp) in zero_cpu_stall_ticks() 181 struct rcu_data *rdp; in rcu_iw_handler() 184 rdp = container_of(iwp, struct rcu_data, rcu_iw); in rcu_iw_handler() 341 struct rcu_data *rdp = &per_cpu(rcu_data, cpu); in print_cpu_stall_fast_no_hz() 405 struct rcu_data *rdp = per_cpu_ptr(&rcu_data, cpu); in print_cpu_stall_info() 537 struct rcu_data *rdp = this_cpu_ptr(&rcu_data); in print_cpu_stall() 585 static void check_cpu_stall(struct rcu_data *rdp) in check_cpu_stall() 668 struct rcu_data *rdp; in show_rcu_gp_kthreads() 693 rdp = per_cpu_ptr(&rcu_data, cpu); in show_rcu_gp_kthreads() 703 rdp = per_cpu_ptr(&rcu_data, cpu); in show_rcu_gp_kthreads() [all …]
|
/Linux-v5.10/Documentation/RCU/Design/Data-Structures/ |
D | Data-Structures.rst | 29 to 16 ``rcu_data`` structures associated with it, so that there are 30 ``NR_CPUS`` number of ``rcu_data`` structures, one for each possible CPU. 42 Quiescent states are recorded by the per-CPU ``rcu_data`` structures, 124 ``rcu_head`` structures, which are queued on ``rcu_data`` structures 140 #. The fields in ``rcu_data`` are private to the corresponding CPU, 155 ``rcu_node`` and ``rcu_data`` structures, tracks grace periods, 173 #. ``rcu_data``: This per-CPU structure is the focus of quiescent-state 190 and ``rcu_data`` data structures. 197 between the ``rcu_node`` and ``rcu_data`` structures, tracks grace 206 Relationship to rcu_node and rcu_data Structures [all …]
|
/Linux-v5.10/Documentation/RCU/ |
D | rcubarrier.rst | 245 4 struct rcu_data *rdp = &per_cpu(rcu_data, cpu); 253 Lines 3 and 4 locate RCU's internal per-CPU rcu_data structure,
|
/Linux-v5.10/tools/memory-model/Documentation/ |
D | simple.txt | 127 within its instance of the per-CPU rcu_data structure, and then uses data
|
/Linux-v5.10/Documentation/RCU/Design/Memory-Ordering/ |
D | Tree-RCU-Memory-Ordering.rst | 176 4 struct rcu_data *rdp;
|