wakeup_source_deactivate(9)
π€ wakeup_source_deactivate(9) β the Kernel API Manual glow-up
Okay bestie, so this one lives in the Kernel API Manual and it's literally called wakeup_source_deactivate π
yes, the name is giving exactly what it is β it's the "okay we're done here, you can stop being awake now" call.
β¨ NAME β¨
wakeup_source_deactivate β mark the given wakeup source as inactive, periodt. π
π¦ SYNOPSIS π¦
void wakeup_source_deactivate (struct wakeup_source *ws );
That's it. It returns void, so no vibe check on the way out β nothing to check, nothing to unwrap, no cap. π«Ά
πΈ ARGUMENTS πΈ
wsβ the wakeup source you're handling. That's the whole cast of this show, she's the main character. π
π DESCRIPTION π
So here's the tea, bestie: wakeup_source_deactivate does two things at once and honestly? iconic multitasking. β
- It updates
ws's statistics β gotta keep the receipts. π - It notifies the PM core that the wakeup source has become inactive β like texting the group chat "k I'm done" so nobody's left waiting on you. π
And the way it does that notify is very specific, so don't let it slide: it decrements the counter of wakeup events being processed, and it increments the counter of registered wakeup events. Two counters, opposite directions, one function. It's giving balance. π§β¨
Heads up, bestie β the description says exactly those two counter updates, so don't go claiming this does anything else. No extra lore, no hidden side quests. π
π₯ SEE ALSO π₯
The kernel file where all this lives is ./drivers/base/power/wakeup.c, and here's the whole friend group β every single one, don't leave anybody on read:
wakeup_source_create(9)wakeup_source_destroy(9)wakeup_source_add(9)wakeup_source_remove(9)wakeup_source_register(9)wakeup_source_unregister(9)wakeup_sources_read_lock(9)wakeup_sources_read_unlock(9)wakeup_sources_walk_start(9)wakeup_sources_walk_next(9)device_wakeup_attach(9)device_wakeup_enable(9)device_wakeup_attach_irq(9)device_wakeup_detach_irq(9)device_wakeup_arm_wake_irqs(9)device_wakeup_disarm_wake_irqs(9)device_wakeup_detach(9)device_wakeup_disable(9)device_set_wakeup_capable(9)device_set_wakeup_enable(9)wakeup_source_not_usable(9)wakeup_source_activate(9)wakeup_source_report_event(9)__pm_stay_awake(9)pm_stay_awake(9)__pm_relax(9)pm_relax(9)pm_wakeup_timer_fn(9)pm_wakeup_ws_event(9)pm_wakeup_dev_event(9)pm_wakeup_pending(9)pm_get_wakeup_count(9)pm_save_wakeup_count(9)pm_wakep_autosleep_enabled(9)print_wakeup_source_stats(9)wakeup_sources_stats_seq_show(9)bpf_wakeup_sources_read_lock(9)bpf_wakeup_sources_read_unlock(9)bpf_wakeup_sources_get_head(9)
π ngl that's a lot of cross-references, but that's just how deep the power-management friend group runs. iykyk.
Alright bestie, that's the whole page π β sourced from ./drivers/base/power, and this little gem is dated October 2026 (yes, future-dated, she's ahead of her time β¨). Now go forth and deactivate those wakeup sources responsibly, mwah π«Άπ
π¦ 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