atomic64_fetch_dec_release(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME

atomic64_fetch_dec_release β€” atomic decrement with release ordering πŸŽ€

okay so quick vibe check: this is a page from the Kernel API Manual, and the function it's about is literally that β€” it decrements your 64-bit atomic, and it does it with release ordering. Iconic behavior, no notes ✨


✨ SYNOPSIS

s64 atomic64_fetch_dec_release (atomic64_t *v );

🌸 ARGUMENTS

  • v β€” pointer to atomic64_t. that's it, that's the whole argument, she's low maintenance πŸ’…

πŸ¦‹ DESCRIPTION

Atomically updates v to (v - 1) with release ordering. so like, one clean little -1, but atomic and with release semantics baked in 🫢

⚠️ Unsafe to use in noinstr code β€” use raw_atomic64_fetch_dec_release there instead. bestie pls don't rawdog this in noinstr code, use the raw_ version, i'm begging 😭

πŸ‘‘ RETURN

The original value of v. not the new one β€” the original, the before pic, the pre-decrement era πŸ’–


🌈 SEE ALSO

Kernel file ./include/linux/atomic/atomic-instrumented.h, plus literally the entire atomic family reunion, iykyk πŸ”₯


and that's the whole page bestie ✨ this one ships out of ./include/linux/atomic with a date stamp of October 2026, and yes, the page is literally just atomic64_fetch_dec_release(9) all over again at the end β€” she said "my name is my name" πŸ’…πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from