STRUCT XE_GGTT_PT_OPS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct xe_ggtt_pt_ops(9) ✨

okay so bestie, welcome to the Kernel API Manual πŸ’– β€” we're literally about to talk about struct xe_ggtt_pt_ops, which is the GGTT Page table operations struct, and the whole point is that these ops can vary from platform to platform. iykyk πŸ¦‹


πŸŽ€ NAME πŸŽ€

struct xe_ggtt_pt_ops β€” GGTT Page table operations Which can vary from platform to platform. no cap, that's literally the whole vibe πŸ’…


🌸 SYNOPSIS 🌸

struct xe_ggtt_pt_ops {
    u64 (*pte_encode_flags)(struct xe_bo *bo, u16 pat_index);
    xe_ggtt_set_pte_fn ggtt_set_pte;
    u64 (*ggtt_get_pte)(struct xe_ggtt *ggtt, u64 addr);
 };

like, that's the whole struct, she's short and iconic πŸ‘‘


⭐ Members ⭐

  • pte_encode_flags β€” Encode PTE flags for a given BO 🫢 this one does exactly what it says on the tin
  • ggtt_set_pte β€” Directly write into GGTT's PTE ✍️ straight in, no middleman
  • ggtt_get_pte β€” Directly read from GGTT's PTE πŸ‘€ again, direct, we love a direct queen

πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./drivers/gpu/drm/xe/xe_ggtt.c β€” and bestie, the whole friend group is here, Global Graphics Translation Table (GGTT)(9), plus:

  • struct xe_ggtt_node(9)
  • struct xe_ggtt(9)
  • xe_ggtt_start(9)
  • xe_ggtt_size(9)
  • xe_ggtt_alloc(9)
  • xe_ggtt_init_early(9)
  • xe_ggtt_node_remove(9)
  • xe_ggtt_init(9)
  • xe_ggtt_shift_nodes(9)
  • xe_ggtt_insert_node(9)
  • xe_ggtt_node_pt_size(9)
  • xe_ggtt_map_bo(9)
  • xe_ggtt_map_bo_unlocked(9)
  • xe_ggtt_insert_node_transform(9)
  • xe_ggtt_insert_bo_at(9)
  • xe_ggtt_insert_bo(9)
  • xe_ggtt_remove_bo(9)
  • xe_ggtt_largest_hole(9)
  • xe_ggtt_assign(9)
  • xe_ggtt_node_save(9)
  • xe_ggtt_node_load(9)
  • xe_ggtt_dump(9)
  • xe_ggtt_print_holes(9)
  • xe_ggtt_encode_pte_flags(9)
  • xe_ggtt_read_pte(9)
  • xe_ggtt_node_addr(9)
  • xe_ggtt_node_size(9)

like, the entire roster, we stan a well-documented subsystem πŸŒˆπŸ’œ


okay that's the page!! πŸŽ€ this lil beauty lives in ./drivers/gpu/drm/xe, dated October 2026, and it's page struct xe_ggtt_pt_ops(9) of the Kernel API Manual. go read the source, mwah πŸ’‹βœ¨πŸ“

πŸ“¦ where this page comes from