Lines Matching full:latch
600 * Latch sequence counters (seqcount_latch_t)
628 * raw_read_seqcount_latch() - pick even/odd latch data copy
648 * read_seqcount_latch() - pick even/odd latch data copy
693 * raw_write_seqcount_latch() - redirect latch readers to even/odd copy
704 * write_seqcount_latch_begin() - redirect latch readers to odd copy
707 * The latch technique is a multiversion concurrency control method that allows
714 * latch allows the same for non-atomic updates. The trade-off is doubling the
731 * void latch_modify(struct latch_struct *latch, ...)
733 * write_seqcount_latch_begin(&latch->seq);
734 * modify(latch->data[0], ...);
735 * write_seqcount_latch(&latch->seq);
736 * modify(latch->data[1], ...);
737 * write_seqcount_latch_end(&latch->seq);
742 * struct entry *latch_query(struct latch_struct *latch, ...)
748 * seq = read_seqcount_latch(&latch->seq);
751 * entry = data_query(latch->data[idx], ...);
754 * } while (read_seqcount_latch_retry(&latch->seq, seq));
785 * write_seqcount_latch() - redirect latch readers to even copy
798 * latch-protected data have been updated.