From: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx> If we don't cancel them, we may end up running them while the device is runtime suspended, which will trigger lots and lots of WARNs on dmesg. Regression introduced by: commit c76bb61a71083b2d90504cc6d0dda2047c5d63ca Author: Daisy Sun <daisy.sun@xxxxxxxxx> Date: Mon Aug 11 11:08:38 2014 -0700 drm/i915/bdw: BDW Software Turbo v2: Also set flip_received to false (Daisy) Testcase: igt/pm_rpm/gem-execbuf (you may have to run it a few times) Cc: Daisy Sun <daisy.sun@xxxxxxxxx> Signed-off-by: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx> --- drivers/gpu/drm/i915/i915_drv.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index b8bd008..857f0f9 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -1447,6 +1447,11 @@ static int intel_runtime_suspend(struct device *device) * intel_mark_idle(). */ cancel_work_sync(&dev_priv->rps.work); + if (dev_priv->rps.is_bdw_sw_turbo) { + del_timer_sync(&dev_priv->rps.sw_turbo.flip_timer); + cancel_work_sync(&dev_priv->rps.sw_turbo.work_max_freq); + atomic_set(&dev_priv->rps.sw_turbo.flip_received, false); + } intel_runtime_pm_disable_interrupts(dev); ret = intel_suspend_complete(dev_priv); -- 2.1.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx