Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/xe/gsc: Wedge the device if the GSCCS reset fails
@ 2024-08-28 22:14 Daniele Ceraolo Spurio
  2024-08-28 23:25 ` ✓ CI.Patch_applied: success for " Patchwork
                   ` (8 more replies)
  0 siblings, 9 replies; 11+ messages in thread
From: Daniele Ceraolo Spurio @ 2024-08-28 22:14 UTC (permalink / raw)
  To: intel-xe; +Cc: Daniele Ceraolo Spurio

Due to the special handling of the GSCCS in HW, we can't escalate to GT
reset when we receive the reset failure interrupt; the specs indicate
that we should trigger an FLR instead, but we do not have support for
that at the moment, so the HW will stay permanently in a broken state.
We should therefore mark the device as wedged, the same as if the GT
reset had failed.

Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
---
 drivers/gpu/drm/xe/xe_gsc.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/xe_gsc.c b/drivers/gpu/drm/xe/xe_gsc.c
index 648786afffe0..6fbea70d3d36 100644
--- a/drivers/gpu/drm/xe/xe_gsc.c
+++ b/drivers/gpu/drm/xe/xe_gsc.c
@@ -335,9 +335,11 @@ static int gsc_er_complete(struct xe_gt *gt)
 	if (er_status == GSCI_TIMER_STATUS_TIMER_EXPIRED) {
 		/*
 		 * XXX: we should trigger an FLR here, but we don't have support
-		 * for that yet.
+		 * for that yet. Since we can't recover from the error, we
+		 * declare the device as wedged.
 		 */
 		xe_gt_err(gt, "GSC ER timed out!\n");
+		xe_device_declare_wedged(gt_to_xe(gt));
 		return -EIO;
 	}
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2024-08-29 21:41 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-28 22:14 [PATCH] drm/xe/gsc: Wedge the device if the GSCCS reset fails Daniele Ceraolo Spurio
2024-08-28 23:25 ` ✓ CI.Patch_applied: success for " Patchwork
2024-08-28 23:25 ` ✓ CI.checkpatch: " Patchwork
2024-08-28 23:26 ` ✓ CI.KUnit: " Patchwork
2024-08-28 23:38 ` ✓ CI.Build: " Patchwork
2024-08-28 23:40 ` ✓ CI.Hooks: " Patchwork
2024-08-28 23:42 ` ✓ CI.checksparse: " Patchwork
2024-08-29  0:01 ` ✓ CI.BAT: " Patchwork
2024-08-29 15:49 ` ✗ CI.FULL: failure " Patchwork
2024-08-29 17:47 ` [PATCH] " Julia Filipchuk
2024-08-29 21:41   ` Daniele Ceraolo Spurio

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox