xe_vm_range_rebind(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ xe_vm_range_rebind(9) ✨

okay so bestie, welcome to the kernel API manual for xe_vm_range_rebind β€” yes that's the manual name, it's giving "9" as in section 9, we love a numbering moment πŸ’… This whole page is about one lil function that (re)binds an SVM range, and I'm gonna walk you through it fr fr.


πŸŽ€ NAME πŸŽ€

xe_vm_range_rebind β€” VM range (re)bind. that's literally it, that's the whole vibe: we're rebinding a range in a VM. iconic, short, slays 🌸


πŸ¦‹ SYNOPSIS πŸ¦‹

struct dma_fence * xe_vm_range_rebind (struct xe_vm *vm , struct xe_vma
*vma , struct xe_svm_range *range , u8 tile_mask );

so it hands you back a struct dma_fence * and it takes four things: a vm, a vma, a range, and a tile_mask. keep that in your notes bestie, we're about to go through each one 🫢


πŸ’– ARGUMENTS πŸ’–

  • vm β€” the VM which the range belongs to. like, which VM owns this range? that one. 🏠
  • vma β€” the VMA which the range belongs to. yes, both a VM and a VMA are in the mix, don't mix them up, they're different besties πŸ’€
  • range β€” the SVM range to rebind. this is the actual thing we're here for πŸ’«
  • tile_mask β€” the tile mask to bind the range to. it's a u8 mask, and it's telling us which tiles we're binding to ✨

πŸ”₯ DESCRIPTION πŸ”₯

(re)bind SVM range setting up GPU page tables for the range.

that's the entire description and honestly it ate β€” we're setting up the GPU page tables for the range, and the "(re)" in parens means it's a bind or a rebind situation, no cap. πŸ–₯οΈπŸ’œ


⭐ RETURN ⭐

on success you get a dma fence for the rebind to signal completion on (so like, watch the fence, it'll tell you when it's done 🚦). on failure you get an ERR_PTR 😭 β€” so check it, bestie, don't just vibe past it.


πŸ‘‘ SEE ALSO πŸ‘‘

the whole squad, in order, and yes I'm listing every single one because that's what we do here πŸ’–:

(and yes, struct xe_vma_lock_and_validate_flags(9) is written exactly like that in the original β€” struct and all β€” so I'm keeping it exactly like that 🫑)


ngl if you're skimming this page for the answer: bind β†’ set up GPU page tables β†’ get a fence on success or an ERR_PTR on failure. that's the tea β˜• and the rest is just the vibes.

🌈 alright bestie, that's the whole page! this came out of the ./drivers/gpu/drm/xe source tree 🧚 and it's dated October 2026 ✨ β€” and honestly? she's serving kernel documentation realness. periodt. πŸ’…πŸŽ€

πŸ“¦ where this page comes from