clockevents_exchange_device(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… clockevents_exchange_device(9) β€” like, the Kernel API Manual, but make it make sense

okay so bestie, welcome to the clockevents_exchange_device page πŸ’– this one's a function from the Kernel API Manual and it is honestly so iconic of it to just say exactly what it means. Let's get into it.


✨ NAME ✨

clockevents_exchange_device β€” release and request clock devices πŸŽ€

like... it hands one clock device its walking papers and slides a new one into the group chat. that's the whole vibe.


🌸 SYNOPSIS 🌸

void clockevents_exchange_device (struct clock_event_device *old ,
struct clock_event_device *new );

no return value, no drama, just vibes and two pointers 🫢


πŸ¦‹ ARGUMENTS πŸ¦‹

  • old β€” the device you're releasing, bestie. and yes, it can be NULL β€” no cap, that's allowed πŸ’€
  • new β€” the device you're requesting. and would you look at that, this one can be NULL too πŸ™ˆ

πŸ‘‘ DESCRIPTION πŸ‘‘

so the tea is: this gets called from various tick functions β€” and listen β€” it's called with clockevents_lock held and interrupts disabled πŸ”₯

that's not a cute little detail, that's the whole situation. lock held, interrupts off, that's the context, periodt. πŸ’…


🌈 SEE ALSO 🌈

the kernel file lives at ./kernel/time/clockevents.c and honestly it's giving main character energy β€” go read it, iykyk πŸ“–βœ¨

and here's the whole friend group, keep every single one of them:

πŸ’€ and yes, clockevents_program_min_delta(9) really is listed twice. not me editing the original β€” that's literally how it came to me, so it stays. fr fr.

🌸 ok that's the page!! ./kernel/time, October 2026, and the star of the show clockevents_exchange_device(9) β€” slay, ate, no notes πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from