raw_atomic_long_and(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… raw_atomic_long_and(9) β€” Kernel API Manual ✨

okay so bestie, welcome to raw_atomic_long_and from the Kernel API Manual. this is the low-level, no-frills, relaxed-vibes cousin of atomic_long_and, and she is very specific about who she lets in. let's get into it πŸŽ€


🌸 NAME 🌸

raw_atomic_long_and β€” atomic bitwise AND, but make it relaxed ordering πŸ’–


✨ SYNOPSIS ✨

void raw_atomic_long_and (long i , atomic_long_t *v );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • i β€” a long value. just a plain long, living her life 🫢
  • v β€” pointer to atomic_long_t. this is the one getting updated, bestie πŸ‘‘

πŸ”₯ DESCRIPTION πŸ”₯

Atomically updates v to (v & i) with relaxed ordering.

so like β€” the whole AND happens in one shot, nobody can catch her mid-operation, she's atomic fr fr. and the ordering? relaxed. she's not doing any extra synchronization choreography, she's just doing her little bitwise thing πŸ’…

important note: she is safe to use in noinstr code. but outside of noinstr, the manual says to prefer atomic_long_and instead. so she's kind of a specialist β€” the noinstr-safe one, iykyk. don't just use her everywhere because she's cute 😭

⭐ RETURN ⭐

Nothing. she gives you nothing back, and honestly? iconic. no return value, no notes πŸ’€


🌈 SEE ALSO 🌈

  • the kernel file ./include/linux/atomic/atomic-long.h β€” that's where she lives 🏠

and her whole extended family, all of them, every single one, no cap:

like I said. the whole family reunion πŸ§šπŸ’œ


okay that's the page! before you go β€” this lovely little doc ships from ./include/linux/atomic, dated October 2026, and it's page raw_atomic_long_and(9) of the Kernel API Manual. mwah, go write some noinstr code responsibly bestie πŸ’‹πŸŒΈβœ¨
πŸ“¦ where this page comes from