Home
last modified time | relevance | path

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

/linux/kernel/rcu/
H A Drcu.h548 void rcu_tasks_get_gp_data(int *flags, unsigned long *gp_seq);
553 void rcu_tasks_rude_get_gp_data(int *flags, unsigned long *gp_seq);
585 void rcutorture_get_gp_data(int *flags, unsigned long *gp_seq);
595 static inline void rcutorture_get_gp_data(int *flags, unsigned long *gp_seq) in rcutorture_get_gp_data() argument
598 *gp_seq = 0; in rcutorture_get_gp_data()
620 unsigned long *gp_seq) in srcutorture_get_gp_data() argument
623 *gp_seq = sp->srcu_idx; in srcutorture_get_gp_data()
629 unsigned long *gp_seq);
H A Drcu_segcblist.c241 BUILD_BUG_ON(RCU_NEXT_TAIL + 1 != ARRAY_SIZE(rsclp->gp_seq)); in rcu_segcblist_init()
242 BUILD_BUG_ON(ARRAY_SIZE(rsclp->tails) != ARRAY_SIZE(rsclp->gp_seq)); in rcu_segcblist_init()
316 *lp = rsclp->gp_seq[RCU_WAIT_TAIL]; in rcu_segcblist_nextgp()
482 if (ULONG_CMP_LT(seq, rsclp->gp_seq[i])) in rcu_segcblist_advance()
507 rsclp->gp_seq[j] = rsclp->gp_seq[i]; in rcu_segcblist_advance()
544 ULONG_CMP_LT(rsclp->gp_seq[i], seq)) in rcu_segcblist_accelerate()
584 rsclp->gp_seq[i] = seq; in rcu_segcblist_accelerate()
H A Dsrcutree.c2012 unsigned long *gp_seq) in srcutorture_get_gp_data() argument
2015 *gp_seq = rcu_seq_current(&ssp->srcu_sup->srcu_gp_seq); in srcutorture_get_gp_data()
/linux/Documentation/RCU/Design/Data-Structures/
H A 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``
292 | Given that the root rcu_node structure has a gp_seq field, |
293 | why does RCU maintain a separate gp_seq in the rcu_state structure? |
294 | Why not just use the root rcu_node's gp_seq as the official record |
300 | updating the root node's gp_seq immediately would create unnecessary |
303 | If we did rcu_seq_start() directly on the root node's gp_seq: |
305 | 1. All CPUs would immediately see their node's gp_seq from their rdp's|
[all …]
/linux/include/linux/
H A Drcu_segcblist.h193 unsigned long gp_seq[RCU_CBLIST_NSEGS]; member
/linux/Documentation/RCU/Design/Memory-Ordering/
H A DTree-RCU-Memory-Ordering.rst341 advance the ``rcu_state`` structure's ``->gp_seq`` grace-period-number
369 breadth-first, setting each ``rcu_node`` structure's ``->gp_seq`` field
379 ``rcu_state`` structure's ``->gp_seq`` field) before setting each leaf
380 ``rcu_node`` structure's ``->gp_seq`` field, each CPU's observation of
436 | beginning of the grace period (the advancing of ``->gp_seq`` from |
566 advancing all the ``->gp_seq`` fields, then it advances the
567 ``rcu_state`` structure's ``->gp_seq`` field. The ordering effects are
586 | once the ``rcu_state`` structure's ``->gp_seq`` field has been |
595 Once a given CPU's leaf ``rcu_node`` structure's ``->gp_seq`` field has
/linux/Documentation/admin-guide/
H A Dkernel-parameters.txt6102 rdp and rnp's gp_seq before setting overflow flag.