raw_atomic_...dnot_release(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… raw_atomic_...dnot_release β€” Kernel API Manual ✨

hiii bestie 🫢 welcome to the Kernel API Manual, section 9 β€” this is the page for raw_atomic_fetch_andnot_release, aka the atomic bitwise AND NOT girly with release ordering energy. she's a raw atomic, she's lowkey niche, and she's about to eat. let's get into it πŸ’–


✨ NAME ✨

raw_atomic_fetch_andnot_release β€” atomic bitwise AND NOT with release ordering 🌸

🫢 SYNOPSIS 🫢

int raw_atomic_fetch_andnot_release (int i , atomic_t *v );

πŸŽ€ ARGUMENTS πŸŽ€

  • i β€” int value. yes queen, the mask thingy you're and-not-ing with πŸŽ€
  • v β€” pointer to atomic_t. the atomic she's operating on, main character energy πŸ‘‘

πŸ’… DESCRIPTION πŸ’…

okay so the way this works is: it atomically updates v to (v & ~i) β€” and yeah she's got release ordering on her, so the memory ordering is doing its whole thing. no cap, it's giving synchronized and demure ✨

and here's the tea bestie: it's safe to use in noinstr code β€” noinstr girlies, this one's for you 😭 but everywhere else, prefer atomic_fetch_andnot_release instead. like, that's the whole vibe check. raw is the backstage pass, not the front door πŸ’€

⭐ RETURN ⭐

The original value of v β€” i.e. the value from before she did the update. not the new one. the old one. so you can peek at what she was before the glow-up πŸ”₯

πŸ¦‹ SEE ALSO πŸ¦‹

bestie there's a whole friend group, and honestly they're all iconic. also the kernel file lives right here:

./include/linux/atomic/atomic-arch-fallback.h

she did NOT come alone β€” here's the full roster 🫢:

ok notice how this page's own name is in that list minus the _release β€” yeah that's her sister πŸ’… both valid, both loved.

and now the 64-bit girlies β€” same energy, bigger numbers, no skips πŸ¦‹:

πŸ’€ not the 64-bit version of this exact function being in the list. she said "I'm my own reference".

and that's the whole page, bestie 🧚 go forth and and-not responsibly πŸ’œ

🌈 sign-off: this lil masterpiece lives in the kernel tree at ./include/linux/atomic, and it's dated October 2026. periodt. πŸŽ€
πŸ“¦ where this page comes from