drm/i915: Put the idle reclocking work on our private workqueue as well.
authorEric Anholt <eric@anholt.net>
Sun, 6 Sep 2009 22:18:53 +0000 (15:18 -0700)
committerEric Anholt <eric@anholt.net>
Sun, 6 Sep 2009 22:18:53 +0000 (15:18 -0700)
Fixes (again) whole-system lockups due to GPU lockups.

Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/i915/intel_display.c

index 9aa1d2d..f674103 100644 (file)
@@ -3201,7 +3201,7 @@ static void intel_gpu_idle_timer(unsigned long arg)
 
        dev_priv->busy = false;
 
-       schedule_work(&dev_priv->idle_work);
+       queue_work(dev_priv->wq, &dev_priv->idle_work);
 }
 
 void intel_increase_renderclock(struct drm_device *dev, bool schedule)
@@ -3335,7 +3335,7 @@ static void intel_crtc_idle_timer(unsigned long arg)
 
        intel_crtc->busy = false;
 
-       schedule_work(&dev_priv->idle_work);
+       queue_work(dev_priv->wq, &dev_priv->idle_work);
 }
 
 static void intel_increase_pllclock(struct drm_crtc *crtc, bool schedule)