Lines Matching full:sequence

13  * - Sequence counters with associated locks, (C) 2020 Linutronix GmbH
27 * The seqlock seqcount_t interface does not prescribe a precise sequence of
42 * Sequence counters (seqcount_t)
56 * locking primitives, use a sequence counter with associated lock
59 * If it's desired to automatically handle the sequence counter writer
66 unsigned sequence; member
79 s->sequence = 0; in __seqcount_init()
118 #define SEQCNT_ZERO(name) { .sequence = 0, SEQCOUNT_DEP_MAP_INIT(name) }
121 * Sequence counters with associated locks (seqcount_LOCKNAME_t)
123 * A sequence counter which associates the lock used for writer
158 * typedef seqcount_LOCKNAME_t - sequence counter with LOCKNAME associated
159 * @seqcount: The real sequence counter
162 * A plain sequence counter with external writer synchronization by
163 * LOCKNAME @lock. The lock is associated to the sequence counter in the
215 unsigned seq = READ_ONCE(s->seqcount.sequence); \
225 * Re-read the sequence counter since the (possibly \
228 seq = READ_ONCE(s->seqcount.sequence); \
261 return READ_ONCE(s->sequence); in __seqprop_sequence()
311 #define __seqcount_sequence(s) __seqprop(s, sequence)
372 * masking the sequence counter LSB. Calling code is responsible for
433 return unlikely(READ_ONCE(s->sequence) != start); in __read_seqcount_t_retry()
471 s->sequence++; in raw_write_seqcount_t_begin()
490 s->sequence++; in raw_write_seqcount_t_end()
611 s->sequence++; in raw_write_seqcount_t_barrier()
613 s->sequence++; in raw_write_seqcount_t_barrier()
632 s->sequence+=2; in write_seqcount_t_invalidate()
637 * Latch sequence counters (seqcount_latch_t)
639 * A sequence counter variant where the counter even/odd value is used to
674 * Return: sequence counter raw value. Use the lowest bit as an index for
684 return READ_ONCE(s->seqcount.sequence); in raw_read_seqcount_latch()
731 * latch->seq.sequence++;
737 * latch->seq.sequence++;
773 * to miss an entire modification sequence, once it resumes it might
783 smp_wmb(); /* prior stores before incrementing "sequence" */ in raw_write_seqcount_latch()
784 s->seqcount.sequence++; in raw_write_seqcount_latch()
785 smp_wmb(); /* increment "sequence" before following stores */ in raw_write_seqcount_latch()
791 * Sequence counters with an embedded spinlock for writer serialization
1002 * locking readers, but it does not update the embedded sequence number.
1133 * Return: the encountered sequence counter value, through the @seq
1150 * @seq: sequence count, from read_seqbegin_or_lock()
1190 * 2. The encountered sequence counter value, returned through @seq