]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/xe/vf: Make VF recovery run on per-GT worker
authorMatthew Brost <matthew.brost@intel.com>
Wed, 8 Oct 2025 21:45:07 +0000 (14:45 -0700)
committerMatthew Brost <matthew.brost@intel.com>
Thu, 9 Oct 2025 10:22:25 +0000 (03:22 -0700)
commite1587f16609bb34dc821d28923a231797c05c0e0
tree2e8c8e4711781f1c8664c6ccd03dab8ad960ddff
parente1d2e2d878bf8a61481173c49e8fbe2cd57fe0bb
drm/xe/vf: Make VF recovery run on per-GT worker

VF recovery is a per-GT operation, so it makes sense to isolate it to a
per-GT queue. Scheduling this operation on the same worker as the GT
reset and TDR not only aligns with this design but also helps avoid race
conditions, as those operations can also modify the queue state.

v2:
 - Fix lockdep splat (Adam)
 - Use xe_sriov_vf_migration_supported helper
v3:
 - Drop xe_gt_sriov_ prefix for private functions (Michal)
 - Drop message in xe_gt_sriov_vf_migration_init_early (Michal)
 - Logic rework in vf_post_migration_notify_resfix_done (Michal)
 - Rework init sequence layering (Michal)

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Tomasz Lis <tomasz.lis@intel.com>
Link: https://lore.kernel.org/r/20251008214532.3442967-10-matthew.brost@intel.com
drivers/gpu/drm/xe/xe_gt.c
drivers/gpu/drm/xe/xe_gt_sriov_vf.c
drivers/gpu/drm/xe/xe_gt_sriov_vf.h
drivers/gpu/drm/xe/xe_gt_sriov_vf_types.h
drivers/gpu/drm/xe/xe_sriov_vf.c
drivers/gpu/drm/xe/xe_sriov_vf.h
drivers/gpu/drm/xe/xe_sriov_vf_types.h