raw_atomic_l...turn_release(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… raw_atomic_long_sub_return_release(9) β€” Kernel API Manual πŸŽ€

okay so bestie, welcome to the Kernel API Manual page for raw_atomic_long_sub_return_release(9) β€” yes the title is a mouthful, but she's iconic and she does one job. This is the raw atomic-long subtract-with-release-order vibe. No cap.


✨ NAME ✨

raw_atomic_long_sub_return_release β€” atomic subtract with release ordering. Literally that's the whole name, and she ate.

🌸 SYNOPSIS 🌸

long raw_atomic_long_sub_return_release (long i , atomic_long_t *v );

πŸŽ€ ARGUMENTS πŸŽ€

  • i β€” the long value to subtract. That's the amount getting taken off. πŸ’–
  • v β€” pointer to an atomic_long_t. This is the atomic long bestie getting updated. ✨

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so here's the tea: this function atomically updates v to (v - i) with release ordering. Boom. Atomic subtract, release ordering, done. πŸ’…

It's safe to use in noinstr code β€” yes, that's a real thing and she's allowed in there. But outside of noinstr land, the manual says prefer atomic_long_sub_return_release elsewhere. So if you're not in noinstr, use the non-raw one, bestie. Periodt. 🫢

πŸ”₯ RETURN πŸ”₯

She returns the updated value of v. So like, after the subtract, you get the fresh new number back. Not the old one. The updated one. Slay. ✨

πŸ‘‘ SEE ALSO πŸ‘‘

The kernel file for this is literally ./include/linux/atomic/atomic-long.h, and here's the whole atomic-long squad, no cap:


And that's the whole page, bestie. This one came from ./include/linux/atomic, dated October 2026, with the footer vibe raw_atomic_l...turn_release(9) β€” cute, a lil truncated, but we know her. πŸ’–πŸŽ€βœ¨

πŸ“¦ where this page comes from