dev_pm_qos_add_request(9)
π dev_pm_qos_add_request(9) π
okay bestie, welcome to the Kernel API Manual β yes this is the actual manual page for dev_pm_qos_add_request, and yes we're gonna get through it together, no cap β¨
πΈ NAME πΈ
dev_pm_qos_add_request β inserts new qos request into the list π«Ά
β¨ SYNOPSIS β¨
int dev_pm_qos_add_request (struct device *dev , struct
dev_pm_qos_request *req , enum dev_pm_qos_req_type type , s32 value );
like literally that's the whole signature, she's not that complicated π
π ARGUMENTS π
devβ target device for the constraint. this is the device you're doing the whole thing for, bestie π¦reqβ pointer to a preallocated handle. you bring the handle, she just fills it in πtypeβ type of the request. iykyk πvalueβ defines the qos request. the actual number-vibe you're asking for β
π§ DESCRIPTION π§
okay so here's the tea β β this function inserts a new entry in the device constraints list of requested qos performance characteristics. iconic behavior honestly.
it recomputes the aggregate QoS expectations of parameters and initializes the dev_pm_qos_request handle. two things, one function, main character energy π
β οΈ real talk: the caller needs to save this handle for later use in updates and removal. do NOT lose it, bestie. that's your receipt π
now the return values, and we are not skipping a single one:
- returns
1if the aggregated constraint value has changed - returns
0if the aggregated constraint value has not changed - returns
-EINVALin case of wrong parameters - returns
-ENOMEMif there's not enough memory to allocate for data structures - returns
-ENODEVif the device has just been removed from the system π
π«Ά heads up: callers should ensure that the target device is notRPM_SUSPENDEDbefore using this function for requests of typeDEV_PM_QOS_FLAGS. like please do the vibe check first, fr fr.
π₯ SEE ALSO π₯
all the siblings, and there are so many of them, we love a big family πΈ. they live in the kernel file ./drivers/base/power/qos.c:
__dev_pm_qos_flags(9)dev_pm_qos_flags(9)__dev_pm_qos_resume_latency(9)dev_pm_qos_read_value(9)apply_constraint(9)dev_pm_qos_constraints_destroy(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)
and that's the whole page, bestie, you ate that ππ
sign-off szn π this one came from the source ./drivers/base/power, dated October 2026 β slay, go forth and add your requests responsibly β¨π
π¦ 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