readx_poll_timeout_atomic(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ readx_poll_timeout_atomic(9) ✨

okay bestie, welcome to the Kernel API Manual πŸ’… this one's a little polling macro and honestly she's lowkey iconic β€” readx_poll_timeout_atomic keeps poking an address until the vibe check passes or she runs out of time πŸŽ€


🌸 NAME 🌸

readx_poll_timeout_atomic β€” periodically poll an address until a condition is met or a timeout occurs πŸ¦‹


⭐ SYNOPSIS ⭐

readx_poll_timeout_atomic (op , addr , val , cond , delay_us ,
timeout_us );

πŸ’– ARGUMENTS πŸ’–

  • op β€” the accessor function 🫢 (she takes addr as her only argument, main character energy fr)
  • addr β€” the address you're polling πŸ‘€
  • val β€” the variable you read the value into πŸŽ€
  • cond β€” the break condition, i.e. the thing that makes her stop (usually involves val, iykyk) ✨
  • delay_us β€” how long to udelay between reads, in us β€” and yes, 0 means tight-loops 😭 please go read the udelay function description for the details and limitations, no cap, it matters
  • timeout_us β€” timeout in us, and 0 means she never times out πŸ’€

πŸ¦‹ DESCRIPTION πŸ¦‹

so when it's available, you'll probably want to use one of the specialized macros defined below instead of reaching for this macro directly πŸ™ˆ like, she works, but the specialized ones are the moment.


🌈 RETURN 🌈

0 on success, and -ETIMEDOUT when she times out ⏰ either way, the last value read at addr gets stored in val πŸ’œ


πŸ‘‘ SEE ALSO πŸ‘‘


ngl bestie, don't sleep on the SEE ALSO β€” the whole friend group is right there and they're all serving πŸ”₯

k that's the whole page, mwah πŸ’‹ she lives in ./include/linux and this cutie is dated October 2026 β€” go poll something, periodt β­πŸ’…

πŸ“¦ where this page comes from