[PATCH v4 0/8] drm/xe/vf: Post-migration recovery of queues and jobs
Tomasz Lis
tomasz.lis at intel.com
Fri Jun 6 00:18:15 UTC 2025
To support VF Migration, it is necessary to do fixups to any
non-virtualized resources. These fixups need to be applied within
VM, on the KMD working with VF.
This series adds two fixup functions to the recovery worker:
* for fixing xe_lrc structs within queues
* for fixing xe_job structs and the commands they emit
It also provides some performance and stability fixes - blocking
submissions and resets while the fixups are being applied.
In case of sub-allocator, it removes the cached GGTT addresses
instead of implementing fixups for them.
v2: Switcghed to update of addresses by xe_lrc_write_ctx_reg()
to avoid kzalloc(), renamed or moved few functions
v3: Renamed and reordered parameters, added kerneldocs
v4: Take job_list_lock, introduce a new atomic for reset
blocking, add "refresh utilization buffer" patch
Tomasz Lis (8):
drm/xe/sa: Avoid caching GGTT address within the manager
drm/xe/vf: Finish RESFIX by reset if CTB not enabled
drm/xe/vf: Pause submissions during RESFIX fixups
drm/xe: Block reset while recovering from VF migration
drm/xe/vf: Rebase HWSP of all contexts after migration
drm/xe/vf: Rebase MEMIRQ structures for all contexts after migration
drm/xe/vf: Post migration, repopulate ring area for pending request
drm/xe/vf: Refresh utilization buffer during migration recovery
drivers/gpu/drm/xe/xe_exec_queue.c | 40 ++++++++++
drivers/gpu/drm/xe/xe_exec_queue.h | 4 +
drivers/gpu/drm/xe/xe_gpu_scheduler.c | 13 +++
drivers/gpu/drm/xe/xe_gpu_scheduler.h | 1 +
drivers/gpu/drm/xe/xe_gt.c | 10 +++
drivers/gpu/drm/xe/xe_gt_debugfs.c | 3 +-
drivers/gpu/drm/xe/xe_gt_sriov_vf.c | 25 ++++++
drivers/gpu/drm/xe/xe_gt_sriov_vf.h | 1 +
drivers/gpu/drm/xe/xe_guc_buf.c | 2 +-
drivers/gpu/drm/xe/xe_guc_submit.c | 111 ++++++++++++++++++++++++++
drivers/gpu/drm/xe/xe_guc_submit.h | 9 +++
drivers/gpu/drm/xe/xe_guc_types.h | 6 ++
drivers/gpu/drm/xe/xe_lrc.c | 58 +++++++++++++-
drivers/gpu/drm/xe/xe_lrc.h | 4 +
drivers/gpu/drm/xe/xe_sa.c | 1 -
drivers/gpu/drm/xe/xe_sa.h | 15 +++-
drivers/gpu/drm/xe/xe_sa_types.h | 1 -
drivers/gpu/drm/xe/xe_sriov_vf.c | 100 ++++++++++++++++++++++-
drivers/gpu/drm/xe/xe_sriov_vf.h | 1 +
19 files changed, 396 insertions(+), 9 deletions(-)
--
2.25.1
More information about the Intel-xe
mailing list