From: Jonathan Cavitt Date: Fri, 10 May 2024 19:45:40 +0000 (-0700) Subject: drm/xe/xe_guc_submit: Declare reset if banned or killed or wedged X-Git-Tag: io_uring-6.11-20240722~49^2~26^2~128 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=b31cfb47b27ae02ea7fb3f956b99c79356730e2a;p=linux-2.6-block.git drm/xe/xe_guc_submit: Declare reset if banned or killed or wedged Add an additional condition to the reset_status guc_exec_queue_op that returns true if the exec queue has been banned or killed or wedged. The reset_status op is only used for exiting any xe_wait_user_fence_ioctl that waits on an exec queue without timing out, so doing this will exit the ioctl early in cases where the exec queue can no longer function, such as after a GuC stop during a reset. Suggested-by: Matthew Brost Signed-off-by: Jonathan Cavitt Reviewed-by: Stuart Summers Signed-off-by: Matthew Brost Link: https://patchwork.freedesktop.org/patch/msgid/20240510194540.3246991-3-jonathan.cavitt@intel.com --- diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c index bd507a916c1c..4efb88e3e056 100644 --- a/drivers/gpu/drm/xe/xe_guc_submit.c +++ b/drivers/gpu/drm/xe/xe_guc_submit.c @@ -1432,7 +1432,7 @@ static void guc_exec_queue_resume(struct xe_exec_queue *q) static bool guc_exec_queue_reset_status(struct xe_exec_queue *q) { - return exec_queue_reset(q); + return exec_queue_reset(q) || exec_queue_killed_or_banned_or_wedged(q); } /*