async_schedule_dev(9)
โจ async_schedule_dev(9) โจ
okay so bestie, we're in the Kernel API Manual today and this little function is genuinely kind of iconic ๐
it's the device-specific glow-up of async_schedule, and it's here to make your async work land on the right CPU. buckle up ๐
๐ธ NAME ๐ธ
async_schedule_dev โ a device specific version of async_schedule ๐ฆ
โญ SYNOPSIS โญ
async_cookie_t async_schedule_dev (async_func_t func , struct device
*dev );
๐ง ARGUMENTS ๐ง
funcโ the function to execute asynchronously, like literally the whole point of this thing โจdevโ the device argument to be passed to the function, and also the vibe-check reference for where it runs ๐
๐ DESCRIPTION ๐
So what you get back is an async_cookie_t, and no cap, you're gonna want to hold onto it โ it may be used for checkpointing later ๐ชโจ
Here's the slay part: dev is used as both the argument for the function and to provide NUMA context for where to run the function. the way that works is we can try to provide for the best possible outcome by operating on the device on the CPUs closest to the device ๐
likeโฆ efficiency? we invented it. periodt. ๐ฅ
๐ NOTE ๐
this function may be called from atomic or non-atomic contexts ๐ so you're covered either way, bestie. no gatekeeping here ๐
just clocking it so you know: atomic and non-atomic are both on the menu. that's the whole note. don't overthink it ๐ซถ
๐ฎ SEE ALSO ๐ฎ
- Kernel file
./include/linux/async.h async_schedule(9)async_schedule_domain(9)async_schedule_dev_domain(9)
go read the whole async family, they're all main character energy in their own way ๐โญ
okay that's the page!! ๐ this fab little page lives in ./include/linux and it's dated October 2026, and obviously it's the async_schedule_dev(9) manual page โ mwah, go forth and schedule asynchronously ๐๐งโโ๏ธ
๐ฆ 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