xe_bo_put_async(9)
π xe_bo_put_async(9)
okay so real talk, this is a page straight out of the Kernel API Manual, and it's all about one tiny function that does one tiny thing but like... correctly. bestie, it's xe_bo_put_async, and yes the (9) is part of the name, we don't question the lore π
β¨ NAME β¨
xe_bo_put_async β put BO async π¦
like, you're putting the BO, but asynchronously. the vibes are immaculate and the timing is deliberately not now.
πΈ SYNOPSIS πΈ
void xe_bo_put_async (struct xe_bo *bo );
that's it. that's the whole signature. one function, one argument, zero drama (well, ok, a little drama, see below) π
π ARGUMENTS π
boβ the bo to put. yes that's the entire description, and honestly? iconic. it's giving "the thing does the thing." no notes π
π₯ DESCRIPTION π₯
So here's the tea β β xe_bo_put_async puts the BO async, meaning the final put is deferred to a worker so that you can exit an IRQ context. that's the whole reason this function exists, bestie: you're in an interrupt context, you can't just do the final put right there, so you hand it off to a worker and sashay away. literally main character energy: knows when to leave the party π
no cap, that's the entire behaviour. don't overthink it, don't add steps, just trust the deferral π«Ά
π SEE ALSO π
the kernel file you wanna peek at is ./drivers/gpu/drm/xe/xe_bo.h and there's an enum in there too, so go look at that if you're the kind of person who reads headers for fun (respect, honestly) πβ¨
and then the whole friend group of related functions, all here, all accounted for:
xe_madv_purgeable_state(9)xe_bo_is_purged(9)xe_bo_madv_is_dontneed(9)xe_bo_willneed_get_locked(9)xe_bo_willneed_put_locked(9)xe_bo_vma_count_inc_locked(9)xe_bo_vma_count_dec_locked(9)xe_bo_size(9)xe_bo_has_valid_ccs_bb(9)xe_bo_put_deferred(9)xe_bo_sg_is_contiguous(9)struct xe_bo_shrink_flags(9)xe_bo_is_mem_type(9)
that's thirteen (13) entries, count 'em, we did not skip a single one ππ
ngl if you're reading this page and you're not in an IRQ context, you might be in the wrong place β but hey, the function doesn't judge, it just defers π
mwah π that's the page! brought to you by the fine folks over at ./drivers/gpu/drm/xe, dated October 2026, and forever known as xe_bo_put_async(9). go forth and put your BOs async, bestie β slay π
β¨π
π¦ 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