Akash noticed that we were recursing from the call to intel_runtime_pm_get() inside intel_mark_busy() when we were already waking the device (through another intel_runtime_pm_get()). In intel_mark_busy() we know the device is awake and purpose of the reference here is to simply keep the device awake until the GPU is idle again. As such we do not need the full resume, and can call the lighter intel_runtime_pm_get_noresume() instead. Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> Cc: Akash Goel <akash.goel@xxxxxxxxx> Cc: Imre Deak <imre.deak@xxxxxxxxx> --- drivers/gpu/drm/i915/intel_display.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index a43abc38af90..da0d882cc71e 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -10668,7 +10668,7 @@ void intel_mark_busy(struct drm_device *dev) if (dev_priv->mm.busy) return; - intel_runtime_pm_get(dev_priv); + intel_runtime_pm_get_noresume(dev_priv); intel_rps_busy(dev_priv); dev_priv->mm.busy = true; } -- 2.1.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx