OSDN Git Service

drm/i915/selftests: Fail hangcheck testing if the GPU is wedged
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 5 Jul 2018 15:02:14 +0000 (16:02 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 6 Jul 2018 06:39:30 +0000 (07:39 +0100)
If the GPU is irrecoverably wedged on startup, it means that it failed
on initialisation and we have already tried to reset it but failed. We
can ignore all further testing, as it is already dead. Failing early,
prevents us from slowly failing in our endeavours later and timing out.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180705150214.28316-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/selftests/intel_hangcheck.c

index 72547aa..5cb808d 100644 (file)
@@ -1243,6 +1243,9 @@ int intel_hangcheck_live_selftests(struct drm_i915_private *i915)
        if (!intel_has_gpu_reset(i915))
                return 0;
 
+       if (i915_terminally_wedged(&i915->gpu_error))
+               return -EIO; /* we're long past hope of a successful reset */
+
        intel_runtime_pm_get(i915);
        saved_hangcheck = fetch_and_zero(&i915_modparams.enable_hangcheck);