comedi_event(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… comedi_event(9) β€” the Kernel API Manual page, bestie edition πŸŽ€

okay so first things first: this is comedi_event(9), straight out of the Kernel API Manual, and it's literally the little function that handles events for your asynchronous COMEDI command. yes queen, it's a 9 β€” kernel-section energy only. πŸ¦‹


✨ NAME ✨

comedi_event β€” handle events for asynchronous COMEDI command 🫢


✨ SYNOPSIS ✨

void comedi_event (struct comedi_device *dev , struct comedi_subdevice
*s );

no cap, that's the whole signature. two pointers in, nothing back out. void said "I don't return, I serve." πŸ’…


✨ ARGUMENTS ✨

  • dev β€” the COMEDI device. you know, the whole aesthetic. πŸŽ€
  • s β€” the COMEDI subdevice. the specific little corner of the device we're doing the vibe check on.

✨ CONTEXT ✨

so where are you allowed to call this? it's in_interrupt (usually β€” like, usually, not always, don't @ me), and the s->spin_lock spin-lock is not held.

⚠️ read that again bestie: spin-lock not held. this function is not your moment to be holding locks, fr fr.

✨ DESCRIPTION ✨

here's the tea β˜• β€” if an asynchronous COMEDI command is active on the subdevice, this function goes through any COMEDI_CB_... event flags that have been set, and those flags are usually set by an interrupt handler. πŸ”₯

and what do those flags actually do? they may:

  • change the run state of the asynchronous command πŸ”„
  • wake a task 😴➑️😳
  • and/or send a SIGIO signal πŸ“£

so basically: flags go in, state changes / tasks wake up / signals fly out. iconic. πŸ’œ


✨ SEE ALSO ✨

the whole friend group, no gatekeeping:


aaaand that's the page!! πŸŽ€ one last vibe check for the sign-off: this whole thing lives under ./drivers/comedi, and it's dated October 2026, with the manual name being comedi_event(9) in case you forgot already. go forth and handle those events, bestie β€” slay πŸ’…βœ¨πŸŒˆ

πŸ“¦ where this page comes from