xe_gt_sriov...ig_ggtt_save(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ xe_gt_sriov_pf_config_ggtt_save πŸ’… (Kernel API Manual energy)

okay so bestie, welcome to the Kernel API Manual glow-up of xe_gt_sriov_pf_config_ggtt_save(9) β€” the function that literally saves a VF's provisioned GGTT data into a buffer. she's giving "archivist but make it SR-IOV" πŸŽ€


🌸 NAME 🌸

xe_gt_sriov_pf_config_ggtt_save β€” save a VF provisioned GGTT data into a buffer. that's it, that's the whole vibe 🫢


⭐ SYNOPSIS ⭐

ssize_t xe_gt_sriov_pf_config_ggtt_save (struct xe_gt *gt , unsigned int
vfid , void *buf , size_t size );

no cap, that's the exact signature. copy it character for character or the compiler will simply end you 😭


πŸ¦‹ ARGUMENTS πŸ¦‹

  • gt β€” the xe_gt. your graphics tile main character. she's the whole context, periodt.
  • vfid β€” the VF identifier. and listen β€” it can't be 0 πŸ™ˆ like, zero is not invited to this party.
  • buf β€” the GGTT data destination buffer. lowkey the cool part: pass NULL to just query the buf size instead of writing anything πŸ‘‘
  • size β€” the size of the buffer. or 0 if you're in query mode and just wanna know how big it needs to be πŸ’…

πŸ’– DESCRIPTION πŸ’–

ngl this function is exclusive. it can only be called on PF β€” that's the Physical Function, the one holding the aux power in this whole SR-IOV situationship ✨ so if you're a VF trying to call this, bestie, respectfully, no πŸ’€


πŸ”₯ RETURN πŸ”₯

here's the vibe check on return values:

  • if you're querying, you get back the size of the buffer needed to save GGTT data β€” the lil "here's how much room you need" answer πŸŽ€
  • on a successful save, it's 0 (slay, no drama)
  • on failure, a negative error code comes through β€” that's the 😭 part, handle her

🌈 SEE ALSO 🌈

the kernel file herself lives at ./drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c πŸ“ and honestly the whole friend group is here, in this exact order, no skips:

xe_gt_sriov_pf_config_get_ggtt(9), xe_gt_sriov_pf_config_set_ggtt(9), xe_gt_sriov_pf_config_bulk_set_ggtt(9), xe_gt_sriov_pf_config_set_fair_ggtt(9), xe_gt_sriov_pf_config_ggtt_restore(9), xe_gt_sriov_pf_config_get_ctxs(9), xe_gt_sriov_pf_config_set_ctxs(9), xe_gt_sriov_pf_config_bulk_set_ctxs(9), xe_gt_sriov_pf_config_set_fair_ctxs(9), xe_gt_sriov_pf_config_get_dbs(9), xe_gt_sriov_pf_config_set_dbs(9), xe_gt_sriov_pf_config_bulk_set_dbs(9), xe_gt_sriov_pf_config_set_fair_dbs(9), xe_gt_sriov_pf_config_get_lmem(9), xe_gt_sriov_pf_config_set_lmem(9), xe_gt_sriov_pf_config_bulk_set_lmem_locked(9), xe_gt_sriov_pf_config_bulk_set_lmem(9), xe_gt_sriov_pf_config_get_lmem_locked(9), xe_gt_sriov_pf_config_set_lmem_locked(9), xe_gt_sriov_pf_config_get_lmem_obj(9), xe_gt_sriov_pf_config_set_fair_lmem(9), xe_gt_sriov_pf_config_set_fair(9), xe_gt_sriov_pf_config_set_exec_quantum_locked(9), xe_gt_sriov_pf_config_set_exec_quantum(9), xe_gt_sriov_pf_config_get_exec_quantum_locked(9), xe_gt_sriov_pf_config_get_exec_quantum(9), xe_gt_sriov_pf_config_bulk_set_exec_quantum_locked(9), xe_gt_sriov_pf_config_set_groups_exec_quantums(9), xe_gt_sriov_pf_config_get_groups_exec_quantums(9), xe_gt_sriov_pf_config_set_preempt_timeout_locked(9), xe_gt_sriov_pf_config_set_preempt_timeout(9), xe_gt_sriov_pf_config_get_preempt_timeout_locked(9), xe_gt_sriov_pf_config_get_preempt_timeout(9), xe_gt_sriov_pf_config_bulk_set_preempt_timeout_locked(9), xe_gt_sriov_pf_config_set_groups_preempt_timeouts(9), xe_gt_sriov_pf_config_get_groups_preempt_timeouts(9), xe_gt_sriov_pf_config_set_sched_priority(9), xe_gt_sriov_pf_config_get_sched_priority(9), xe_gt_sriov_pf_config_force_sched_priority_locked(9), xe_gt_sriov_pf_config_set_fair_sched(9), xe_gt_sriov_pf_config_set_threshold(9), xe_gt_sriov_pf_config_get_threshold(9), xe_gt_sriov_pf_config_release(9), xe_gt_sriov_pf_config_sanitize(9), xe_gt_sriov_pf_config_push(9), xe_gt_sriov_pf_config_is_empty(9), xe_gt_sriov_pf_config_save(9), xe_gt_sriov_pf_config_restore(9), xe_gt_sriov_pf_config_init(9), xe_gt_sriov_pf_config_restart(9), xe_gt_sriov_pf_config_print_ggtt(9), xe_gt_sriov_pf_config_print_ctxs(9), xe_gt_sriov_pf_config_print_dbs(9), xe_gt_sriov_pf_config_print_lmem(9), xe_gt_sriov_pf_config_print_available_ggtt(9)

iykyk, that's the entire roster πŸ’œ


mwah, that's a wrap 🧚 source dir is ./drivers/gpu/drm/xe and this iconic little page is dated October 2026 β€” stan the kernel docs, they ate πŸ’…βœ¨

πŸ“¦ where this page comes from