apply_constraint(9)
π apply_constraint(9) β the Kernel API Manual moment
ok so bestie, we're in the Kernel API Manual, section 9, and today's main character is apply_constraint. no cap, this one's a little internal helper but she's important β she's the one actually pushing your power-management wishes into the system. π
β¨ NAME β¨
apply_constraint β Add/modify/remove device PM QoS request.
π¦ SYNOPSIS π¦
int apply_constraint (struct dev_pm_qos_request *req , enum
pm_qos_req_action action , s32 value );
πΈ ARGUMENTS πΈ
reqβ the constraint request to apply, like the little envelope you're handing over πactionβ the action to perform (add/update/remove). pick your fighter.valueβ the value to assign to the QoS request. this is the actual number, so be normal about it.
π₯ DESCRIPTION π₯
okay so this is an internal function β like, not the one you call from your driver and post about, she's behind the scenes π β and her whole job is updating the constraints list using the PM QoS core code, and then, if needed, calling the per-device callbacks.
that's it. the way that she just quietly does the plumbing so everything stays in sync. iconic behavior honestly π«Ά
π SEE ALSO π
Kernel file ./drivers/base/power/qos.c β go read it, the lore is in there iykyk π
__dev_pm_qos_flags(9)dev_pm_qos_flags(9)__dev_pm_qos_resume_latency(9)dev_pm_qos_read_value(9)dev_pm_qos_constraints_destroy(9)dev_pm_qos_add_request(9)__dev_pm_qos_update_request(9)dev_pm_qos_update_request(9)dev_pm_qos_remove_request(9)dev_pm_qos_add_notifier(9)dev_pm_qos_remove_notifier(9)dev_pm_qos_add_ancestor_request(9)dev_pm_qos_expose_latency_limit(9)dev_pm_qos_hide_latency_limit(9)dev_pm_qos_expose_flags(9)dev_pm_qos_hide_flags(9)dev_pm_qos_update_flags(9)dev_pm_qos_get_user_latency_tolerance(9)dev_pm_qos_update_user_latency_tolerance(9)dev_pm_qos_expose_latency_tolerance(9)dev_pm_qos_hide_latency_tolerance(9)
that's the whole page, bestie β go forth and constrain responsibly ππ
source: ./drivers/base/power Β· version/date: October 2026 β mwah, signed off with love from your favorite kernel girlie π§β¨
π¦ 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