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 <[email protected]> --- 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 c137dc0a1840..eeb626737760 100644 --- a/drivers/gpu/drm/xe/xe_device.c +++ b/drivers/gpu/drm/xe/xe_device.c @@ -1329,8 +1329,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); -- 2.43.0
