xe_tlb_inva...page_reclaim(9)
β¨ xe_tlb_inval_job_add_page_reclaim β¨
okay so this is a page from the Kernel API Manual, section 9 β yes bestie, 9, the kernel-API girlies π
this one's living in xe_tlb_inval_job.c territory and it's lowkey iconic.
πΈ NAME πΈ
xe_tlb_inval_job_add_page_reclaim β embed a PRL into a TLB job π
π¦ SYNOPSIS π¦
void xe_tlb_inval_job_add_page_reclaim (struct xe_tlb_inval_job *job ,
struct xe_page_reclaim_list *prl );
literally that's the whole signature, no cap π
π ARGUMENTS π
jobβ the TLB invalidation job, and likeβ¦ it's the one that may trigger reclamation π so yeah, main character energy frprlβ the page reclaim list, populated during unbind β¨ (she's been through things, she's got entries)
π DESCRIPTION π
So what this does is copy prl into the job, and then it takes an extra reference to the entry page π«Ά β the whole point being that ownership can transfer over to the TLB fence when the job gets pushed. it's giving "handoff, but make it safe" π
π₯
ngl the reference-counting part is the moment here β don't sleep on it, that's literally how the ownership transfer stays valid π
β SEE ALSO β
- Kernel file
./drivers/gpu/drm/xe/xe_tlb_inval_job.cπ xe_tlb_inval_job_create(9)xe_tlb_inval_job_alloc_dep(9)xe_tlb_inval_job_push(9)xe_tlb_inval_job_get(9)xe_tlb_inval_job_put(9)
like, read the whole friend group, they're all connected bestie π§π
and that's the vibe check! this lil gem comes from ./drivers/gpu/drm/xe, dated October 2026 β screenshot it, cite it, slay it πβ¨π
π¦ 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