drm/xe: Only use reserved BCS instances for usm migrate exec queue
authorMatthew Brost <matthew.brost@intel.com>
Mon, 15 Apr 2024 19:04:53 +0000 (12:04 -0700)
committerMatthew Brost <matthew.brost@intel.com>
Tue, 14 May 2024 20:12:27 +0000 (13:12 -0700)
commit04f4a70a183a688a60fe3882d6e4236ea02cfc67
treeb4948677744eedece21b570477c5d927cc1a6503
parent4c0be90e6874b8af30541c37689780fc7c8276c9
drm/xe: Only use reserved BCS instances for usm migrate exec queue

The GuC context scheduling queue is 2 entires deep, thus it is possible
for a migration job to be stuck behind a fault if migration exec queue
shares engines with user jobs. This can deadlock as the migrate exec
queue is required to service page faults. Avoid deadlock by only using
reserved BCS instances for usm migrate exec queue.

Fixes: a043fbab7af5 ("drm/xe/pvc: Use fast copy engines as migrate engine on PVC")
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240415190453.696553-2-matthew.brost@intel.com
Reviewed-by: Brian Welty <brian.welty@intel.com>
drivers/gpu/drm/xe/xe_migrate.c