read_seqlock_excl(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ read_seqlock_excl ✨

okay so bestie, welcome to the Kernel API Manual entry for read_seqlock_excl(9) β€” yes that's the manual name, yes I'm folding it in here, we move πŸ’…


🌸 NAME 🌸

read_seqlock_excl β€” like, it begins a seqlock_t locking reader section. that's the whole vibe πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

void read_seqlock_excl (seqlock_t *sl );

literally copy that exactly, no cap ✨


πŸ’– ARGUMENTS πŸ’–

  • sl β€” pointer to seqlock_t. that's it. that's the argument. iconic minimalism 🫢

πŸ‘‘ DESCRIPTION πŸ‘‘

okay so read_seqlock_excl opens a seqlock_t locking reader critical section. a locking reader exclusively locks out both other writers and other locking readers β€” yes both, the way it's framed with asterisks and italics, take it seriously 😭 β€” but here's the thing, it does not update the embedded sequence number.

locking readers act like a normal spin_lock/spin_unlock. simple as that, fr fr.

the opened read section must be closed with read_sequnlock_excl β€” do not leave it hanging, bestie, that's not the move πŸ’€

πŸ”₯ CONTEXT πŸ”₯

if the seqlock_t write section, or other read sections, can be invoked from hardirq or softirq contexts, use the _irqsave or _bh variant of this function instead. like, genuinely, that's a real caveat, not a drill πŸ™ˆ


🌈 SEE ALSO 🌈

bestie, buckle up, this list is a whole main character moment πŸ‘‘

kernel file ./include/linux/seqlock.h plus all of these:

like, obsessed with the sheer length of this list ngl 🧚


cute little sign-off: this page lives in ./include/linux, dated October 2026, and it's the read_seqlock_excl(9) entry of the Kernel API Manual. slay, go lock something responsibly πŸ’œ
πŸ“¦ where this page comes from