OSDN Git Service

drm/i915/gem: Leave reloading kernel context on resume to GT
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 1 Nov 2019 14:10:07 +0000 (14:10 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 1 Nov 2019 14:47:36 +0000 (14:47 +0000)
As we already do reload the kernel context in intel_gt_resume, repeating
that action inside i915_gem_resume() as well is redundant.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Andi Shyti <andi.shyti@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191101141009.15581-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gem/i915_gem_pm.c

index e2ee9c0..64dd04a 100644 (file)
 
 #include "i915_drv.h"
 
-static bool switch_to_kernel_context_sync(struct intel_gt *gt)
-{
-       bool result = !intel_gt_is_wedged(gt);
-
-       if (intel_gt_wait_for_idle(gt, I915_GEM_IDLE_TIMEOUT) == -ETIME) {
-               /* XXX hide warning from gem_eio */
-               if (i915_modparams.reset) {
-                       dev_err(gt->i915->drm.dev,
-                               "Failed to idle engines, declaring wedged!\n");
-                       GEM_TRACE_DUMP();
-               }
-
-               /*
-                * Forcibly cancel outstanding work and leave
-                * the gpu quiet.
-                */
-               intel_gt_set_wedged(gt);
-               result = false;
-       }
-
-       if (intel_gt_pm_wait_for_idle(gt))
-               result = false;
-
-       return result;
-}
-
 static void user_forcewake(struct intel_gt *gt, bool suspend)
 {
        int count = atomic_read(&gt->user_wakeref);
@@ -158,10 +132,6 @@ void i915_gem_resume(struct drm_i915_private *i915)
        if (intel_gt_resume(&i915->gt))
                goto err_wedged;
 
-       /* Always reload a context for powersaving. */
-       if (!switch_to_kernel_context_sync(&i915->gt))
-               goto err_wedged;
-
        user_forcewake(&i915->gt, false);
 
 out_unlock: