Home
last modified time | relevance | path

Searched refs:gp_seq (Results 1 – 12 of 12) sorted by relevance

/Linux-v5.10/include/trace/events/
Drcu.h71 TP_PROTO(const char *rcuname, unsigned long gp_seq, const char *gpevent),
73 TP_ARGS(rcuname, gp_seq, gpevent),
77 __field(long, gp_seq)
83 __entry->gp_seq = (long)gp_seq;
88 __entry->rcuname, __entry->gp_seq, __entry->gpevent)
109 TP_PROTO(const char *rcuname, unsigned long gp_seq,
113 TP_ARGS(rcuname, gp_seq, gp_seq_req, level, grplo, grphi, gpevent),
117 __field(long, gp_seq)
127 __entry->gp_seq = (long)gp_seq;
136 __entry->rcuname, (long)__entry->gp_seq, (long)__entry->gp_seq_req, __entry->level,
[all …]
/Linux-v5.10/kernel/rcu/
Dtree.c90 .gp_seq = (0UL - 300UL) << RCU_SEQ_CTR_SHIFT,
219 return rcu_seq_state(rcu_seq_current(&rcu_state.gp_seq)); in rcu_gp_in_progress()
571 return READ_ONCE(rcu_state.gp_seq); in rcu_get_gp_seq()
599 unsigned long *gp_seq) in rcutorture_get_gp_data() argument
604 *gp_seq = rcu_seq_current(&rcu_state.gp_seq); in rcutorture_get_gp_data()
1171 if (ULONG_CMP_LT(rcu_seq_current(&rdp->gp_seq) + ULONG_MAX / 4, in rcu_gpnum_ovf()
1172 rnp->gp_seq)) in rcu_gpnum_ovf()
1174 if (ULONG_CMP_LT(rdp->rcu_iw_gp_seq + ULONG_MAX / 4, rnp->gp_seq)) in rcu_gpnum_ovf()
1175 rdp->rcu_iw_gp_seq = rnp->gp_seq + ULONG_MAX / 4; in rcu_gpnum_ovf()
1187 trace_rcu_fqs(rcu_state.name, rdp->gp_seq, rdp->cpu, TPS("dti")); in dyntick_save_progress_counter()
[all …]
Dtree_stall.h188 rdp->rcu_iw_gp_seq = rnp->gp_seq; in rcu_iw_handler()
415 ticks_value = rcu_seq_ctr(rcu_state.gp_seq - rdp->gp_seq); in print_cpu_stall_info()
423 delta = rcu_seq_ctr(rdp->mynode->gp_seq - rdp->rcu_iw_gp_seq); in print_cpu_stall_info()
452 (long)rcu_seq_current(&rcu_state.gp_seq), in rcu_check_gp_kthread_starvation()
465 static void print_other_cpu_stall(unsigned long gp_seq, unsigned long gps) in print_other_cpu_stall() argument
502 (long)rcu_seq_current(&rcu_state.gp_seq), totqlen); in print_other_cpu_stall()
510 if (rcu_seq_current(&rcu_state.gp_seq) != gp_seq) { in print_other_cpu_stall()
559 (long)rcu_seq_current(&rcu_state.gp_seq), totqlen); in print_cpu_stall()
619 gs1 = READ_ONCE(rcu_state.gp_seq); in check_cpu_stall()
625 gs2 = READ_ONCE(rcu_state.gp_seq); in check_cpu_stall()
[all …]
Drcu_segcblist.c149 BUILD_BUG_ON(RCU_NEXT_TAIL + 1 != ARRAY_SIZE(rsclp->gp_seq)); in rcu_segcblist_init()
150 BUILD_BUG_ON(ARRAY_SIZE(rsclp->tails) != ARRAY_SIZE(rsclp->gp_seq)); in rcu_segcblist_init()
231 *lp = rsclp->gp_seq[RCU_WAIT_TAIL]; in rcu_segcblist_nextgp()
403 if (ULONG_CMP_LT(seq, rsclp->gp_seq[i])) in rcu_segcblist_advance()
426 rsclp->gp_seq[j] = rsclp->gp_seq[i]; in rcu_segcblist_advance()
463 ULONG_CMP_LT(rsclp->gp_seq[i], seq)) in rcu_segcblist_accelerate()
499 rsclp->gp_seq[i] = seq; in rcu_segcblist_accelerate()
Drcu.h454 unsigned long *gp_seq);
463 int *flags, unsigned long *gp_seq) in rcutorture_get_gp_data() argument
466 *gp_seq = 0; in rcutorture_get_gp_data()
489 unsigned long *gp_seq) in srcutorture_get_gp_data() argument
494 *gp_seq = sp->srcu_idx; in srcutorture_get_gp_data()
501 unsigned long *gp_seq);
Dtree_plugin.h228 WARN_ON_ONCE(rnp->completedqs == rnp->gp_seq); in rcu_preempt_ctxt_queue()
268 __this_cpu_read(rcu_data.gp_seq), in rcu_qs()
317 ? rnp->gp_seq in rcu_note_context_switch()
318 : rcu_seq_snap(&rnp->gp_seq)); in rcu_note_context_switch()
494 WARN_ON_ONCE(rnp->completedqs == rnp->gp_seq && in rcu_preempt_deferred_qs_irqrestore()
502 rnp->gp_seq, t->pid); in rcu_preempt_deferred_qs_irqrestore()
523 rnp->gp_seq, in rcu_preempt_deferred_qs_irqrestore()
669 rnp->gp_seq, t->pid); in rcu_preempt_check_blocked_tasks()
754 (long)READ_ONCE(rnp->gp_seq), (long)rnp->completedqs); in dump_blkd_tasks()
820 __this_cpu_read(rcu_data.gp_seq), TPS("cpuqs")); in rcu_qs()
[all …]
Dtree.h44 unsigned long gp_seq; /* Track rsp->gp_seq. */ member
152 unsigned long gp_seq; /* Track rsp->gp_seq counter. */ member
306 unsigned long gp_seq; /* Grace-period sequence #. */ member
Drcutorture.c1581 unsigned long __maybe_unused gp_seq = 0; in rcu_torture_stats_print() local
1584 &flags, &gp_seq); in rcu_torture_stats_print()
1586 &flags, &gp_seq); in rcu_torture_stats_print()
1590 rcu_torture_writer_state, gp_seq, flags, in rcu_torture_stats_print()
2462 unsigned long gp_seq = 0; in rcu_torture_cleanup() local
2498 rcutorture_get_gp_data(cur_ops->ttype, &flags, &gp_seq); in rcu_torture_cleanup()
2499 srcutorture_get_gp_data(cur_ops->ttype, srcu_ctlp, &flags, &gp_seq); in rcu_torture_cleanup()
2501 cur_ops->name, (long)gp_seq, flags, in rcu_torture_cleanup()
2502 rcutorture_seq_diff(gp_seq, start_gp_seq)); in rcu_torture_cleanup()
2627 unsigned long gp_seq = 0; in rcu_torture_init() local
[all …]
Dsrcutree.c1246 unsigned long *gp_seq) in srcutorture_get_gp_data() argument
1251 *gp_seq = rcu_seq_current(&ssp->srcu_gp_seq); in srcutorture_get_gp_data()
/Linux-v5.10/include/linux/
Drcu_segcblist.h69 unsigned long gp_seq[RCU_CBLIST_NSEGS]; member
/Linux-v5.10/Documentation/RCU/Design/Data-Structures/
DData-Structures.rst272 1 unsigned long gp_seq;
274 RCU grace periods are numbered, and the ``->gp_seq`` field contains the
278 ``->gp_seq`` are zero, then RCU is idle. Any other value in the bottom
282 There are ``->gp_seq`` fields in the ``rcu_node`` and ``rcu_data``
383 1 unsigned long gp_seq;
386 The ``rcu_node`` structures' ``->gp_seq`` fields are the counterparts of
389 two bits of a given ``rcu_node`` structure's ``->gp_seq`` field is zero,
392 The ``>gp_seq`` field of each ``rcu_node`` structure is updated at the
397 request is considered fulfilled when the value of the ``->gp_seq`` field
404 | very long time. Won't wrapping of the ``->gp_seq`` field cause |
[all …]
/Linux-v5.10/Documentation/RCU/Design/Memory-Ordering/
DTree-RCU-Memory-Ordering.rst317 advance the ``rcu_state`` structure's ``->gp_seq`` grace-period-number
345 breadth-first, setting each ``rcu_node`` structure's ``->gp_seq`` field
355 ``rcu_state`` structure's ``->gp_seq`` field) before setting each leaf
356 ``rcu_node`` structure's ``->gp_seq`` field, each CPU's observation of
412 | beginning of the grace period (the advancing of ``->gp_seq`` from |
542 advancing all the ``->gp_seq`` fields, then it advances the
543 ``rcu_state`` structure's ``->gp_seq`` field. The ordering effects are
562 | once the ``rcu_state`` structure's ``->gp_seq`` field has been |
571 Once a given CPU's leaf ``rcu_node`` structure's ``->gp_seq`` field has