drm/xe/vf: Improve getting clean NULL context
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Tue, 3 Mar 2026 20:13:54 +0000 (21:13 +0100)
committerMichal Wajdeczko <michal.wajdeczko@intel.com>
Mon, 23 Mar 2026 09:38:14 +0000 (10:38 +0100)
commit61e7649a1a253609769063a30018e68b970324d6
tree9f9b13cf51ecadbe2663d215b471b74a63d5e730
parentd95fda29758b59f4279465892905ca57dfd4bb10
drm/xe/vf: Improve getting clean NULL context

There is a small risk that when fetching a NULL context image the
VF may get a tweaked context image prepared by another VF that was
previously running on the engine before the GuC scheduler switched
the VFs.

To avoid that risk, without forcing GuC scheduler to trigger costly
engine reset on every VF switch, use a watchdog mechanism that when
configured with impossible condition, triggers an interrupt, which
GuC will handle by doing an engine reset. Also adjust job size to
account for additional dwords with watchdog setup.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: MichaƂ Winiarski <michal.winiarski@intel.com>
Link: https://patch.msgid.link/20260303201354.17948-4-michal.wajdeczko@intel.com
drivers/gpu/drm/xe/xe_gt.c
drivers/gpu/drm/xe/xe_ring_ops.c
drivers/gpu/drm/xe/xe_ring_ops_types.h
drivers/gpu/drm/xe/xe_sched_job_types.h