wait_event_...ble_lock_irq(9)
πΈ NAME πΈ
okay so bestie, welcome to the Kernel API Manual β this is the wait_event_...ble_lock_irq(9) page for wait_event_interruptible_lock_irq, and she is literally: sleep until a condition gets true. The condition is checked under the lock. This is expected to be called with the lock taken. π
β¨ SYNOPSIS β¨
wait_event_interruptible_lock_irq (wq_head , condition , lock );
π ARGUMENTS π
wq_headβ the waitqueue to wait on. πconditionβ a C expression for the event to wait for. πlockβ a lockedspinlock_t, which will be released beforescheduleand reacquired afterwards. π
π DESCRIPTION π
okay so your process gets put to sleep in TASK_INTERRUPTIBLE until the condition evaluates to true or signal is received. The condition gets checked every single time the waitqueue wq_head is woken up. π
wake_up has to be called after changing any variable that could change the result of the wait condition. no cap, that's the rule. π«Ά
this macro is supposed to be called while holding the lock. The lock is dropped before going to sleep and is reacquired afterwards. so yes, she lets go of the lock for her lil nap and then grabs it right back. π
return vibes: the macro will return -ERESTARTSYS if it was interrupted by a signal, and 0 if condition evaluated to true. that's the whole mood. β¨
π¦ SEE ALSO π¦
the whole waitqueue friend group is linked from Kernel file ./include/linux/wait.h β every single reference, periodt:
waitqueue_active(9)wq_has_single_sleeper(9)wq_has_sleeper(9)wake_up_pollfree(9)wait_event(9)wait_event_freezable(9)wait_event_timeout(9)wait_event_cmd(9)wait_event_interruptible(9)wait_event_interruptible_timeout(9)wait_event_hrtimeout(9)wait_event_interruptible_hrtimeout(9)wait_event_idle(9)wait_event_idle_exclusive(9)wait_event_idle_timeout(9)wait_event_idle_exclusive_timeout(9)wait_event_interruptible_locked(9)wait_event_interruptible_locked_irq(9)wait_event_interruptible_exclusive_locked(9)wait_event_interruptible_exclusive_locked_irq(9)wait_event_killable(9)wait_event_state(9)wait_event_killable_timeout(9)wait_event_lock_irq_cmd(9)wait_event_lock_irq(9)wait_event_interruptible_lock_irq_cmd(9)wait_event_interruptible_lock_irq_timeout(9)
okay bye bestie π this page is from ./include/linux, October 2026, and it's the wait_event_...ble_lock_irq(9) manual page signing off. stay sleepy, stay locked, slay. π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms