alloc_order..._lockdep_map(9)
π alloc_order..._lockdep_map(9)
okay so bestie, welcome to the Kernel API Manual β¨ β this is the page for alloc_order..._lockdep_map, and yes the title is literally abbreviated with dots like that, it's giving "the kernel was too busy to type the whole thing" π but we move.
πΈ NAME πΈ
alloc_ordered_workqueue_lockdep_map β allocate an ordered workqueue with user-defined lockdep_map π
β¨ SYNOPSIS β¨
alloc_ordered_workqueue_lockdep_map (fmt , flags , lockdep_map , args... );
that's the whole vibe, no cap π«Ά
π ARGUMENTS π
fmtβ printf format for the name of the workqueue. it's how your queue gets its little name tag πflagsβWQ_*flags β and heads up, onlyWQ_FREEZABLEandWQ_MEM_RECLAIMare actually meaningful here, the rest are just kinda there π«lockdep_mapβ user-defined lockdep_map. yours. you bring it, you own it πargsβ args forfmt, aka the stuff that fills in your printf format πΈ
π¦ DESCRIPTION π¦
Same as alloc_ordered_workqueue but with the a user-define lockdep_map. (yes the original says "the a user-define", we're keeping it, it's iconic π)
So why do you care? It's useful for workqueues created with the same purpose, and to avoid leaking a lockdep_map on each workqueue creation π₯ like, if you're making a bunch of these for the same reason, you do not want a fresh lockdep_map dripping out every single time. main character resource management, honestly π
β RETURN β
Pointer to the allocated workqueue on success, NULL on failure. that's it, that's the deal π«Ά (and yes, NULL means check your stuff, don't just rawdog the pointer π)
π SEE ALSO π
Kernel file ./include/linux/workqueue.h plus:
struct workqueue_attrs(9)work_pending(9)delayed_work_pending(9)alloc_workqueue(9)devm_alloc_workqueue(9)alloc_workqueue_lockdep_map(9)alloc_ordered_workqueue(9)queue_work(9)queue_delayed_work(9)mod_delayed_work(9)schedule_work_on(9)schedule_work(9)enable_and_queue_work(9)schedule_delayed_work_on(9)schedule_delayed_work(9)
like a whole friend group of workqueue functions, honestly obsessed π§ββοΈ
ngl bestie, workqueues and lockdep are the kind of thing where reading the SEE ALSO list is not optional β that's the whole lore drop right there π
okay that's the page!! πΈ it lives under ./include/linux and the manual dates it October 2026 β so like, future-dated kernel lore, very mysterious of it β slay, go allocate something ordered π
π
π¦ 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