waitqueue-completion-synchronization

Installation
SKILL.md

Waitqueues & Completion Synchronization

Rules for blocking kernel paths that wait on events: the wait_event family, wake_up variants, and completions. Load references/README.md before writing a wait/wake or complete/wait_for_completion path.

When to use

  • Writing or reviewing code that blocks until a condition becomes true: wait_event, wait_event_interruptible, wait_event_timeout, wait_event_killable.
  • Waking blocked waiters with wake_up, wake_up_interruptible, wake_up_all, wake_up_poll, __wake_up.
  • One-shot event signaling with complete, complete_all, wait_for_completion, wait_for_completion_interruptible, wait_for_completion_timeout.
  • Debugging hangs, lost wakeups, or spurious-wakeup bugs in drivers, block layers, and protocol state machines.
  • Deciding whether a waiter needs a waitqueue or a completion.
Installs
1
GitHub Stars
2
First Seen
Oct 3, 2026