[Intel-gfx] [PATCH v2] drm/i915/guc: Check for wedged before doing stuff
Matthew Brost
matthew.brost at intel.com
Thu Dec 23 18:00:34 UTC 2021
On Tue, Dec 21, 2021 at 01:02:12PM -0800, John.C.Harrison at Intel.com wrote:
> From: John Harrison <John.C.Harrison at Intel.com>
>
> A fault injection probe test hit a BUG_ON in a GuC error path. It
> showed that the GuC code could potentially attempt to do many things
> when the device is actually wedged. So, add a check in to prevent that.
>
> v2: Use intel_gt_is_wedged instead of testing bits directly in the
> GuC submission code (review feedback from Tvrtko).
>
> Signed-off-by: John Harrison <John.C.Harrison at Intel.com>
Reviewed-by: Matthew Brost <matthew.brost at intel.com>
> ---
> drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> index e7517206af82..756b29d8326b 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> @@ -1349,7 +1349,8 @@ submission_disabled(struct intel_guc *guc)
> struct i915_sched_engine * const sched_engine = guc->sched_engine;
>
> return unlikely(!sched_engine ||
> - !__tasklet_is_enabled(&sched_engine->tasklet));
> + !__tasklet_is_enabled(&sched_engine->tasklet) ||
> + intel_gt_is_wedged(guc_to_gt(guc)));
> }
>
> static void disable_submission(struct intel_guc *guc)
> @@ -1725,7 +1726,7 @@ void intel_guc_submission_reset_finish(struct intel_guc *guc)
> {
> /* Reset called during driver load or during wedge? */
> if (unlikely(!guc_submission_initialized(guc) ||
> - test_bit(I915_WEDGED, &guc_to_gt(guc)->reset.flags))) {
> + intel_gt_is_wedged(guc_to_gt(guc)))) {
> return;
> }
>
> --
> 2.25.1
>
More information about the Intel-gfx
mailing list