From f3014d7f65dba9e911ca8216be1f14e909816f16 Mon Sep 17 00:00:00 2001 From: Raag Jadav Date: Thu, 5 Mar 2026 18:36:49 +0530 Subject: [PATCH] drm/xe: Send 'none' recovery method for XE_WEDGED_MODE_UPON_ANY_HANG_NO_RESET XE_WEDGED_MODE_UPON_ANY_HANG_NO_RESET is intended for debugging hangs, so wedge the device with 'none' recovery method and have it available to the user for debugging. Signed-off-by: Raag Jadav Reviewed-by: Rodrigo Vivi Signed-off-by: Matthew Brost Link: https://patch.msgid.link/20260305130720.3685754-4-raag.jadav@intel.com --- drivers/gpu/drm/xe/xe_device.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c index 3462645ca13c..4c77aad436dd 100644 --- a/drivers/gpu/drm/xe/xe_device.c +++ b/drivers/gpu/drm/xe/xe_device.c @@ -1318,8 +1318,15 @@ void xe_device_declare_wedged(struct xe_device *xe) xe_gt_declare_wedged(gt); if (xe_device_wedged(xe)) { + /* + * XE_WEDGED_MODE_UPON_ANY_HANG_NO_RESET is intended for debugging + * hangs, so wedge the device with 'none' recovery method and have + * it available to the user for debugging. + */ + if (xe->wedged.mode == XE_WEDGED_MODE_UPON_ANY_HANG_NO_RESET) + xe_device_set_wedged_method(xe, DRM_WEDGE_RECOVERY_NONE); /* If no wedge recovery method is set, use default */ - if (!xe->wedged.method) + else if (!xe->wedged.method) xe_device_set_wedged_method(xe, DRM_WEDGE_RECOVERY_REBIND | DRM_WEDGE_RECOVERY_BUS_RESET);