summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2009-09-06 15:18:53 -0700
committerEric Anholt <eric@anholt.net>2009-09-06 15:18:53 -0700
commit01dfba93d9dfcf6d7abfc55ff5d9d6e76fa01ba0 (patch)
treedf8fe0fba80b54492084025ffcda480bc810990f
parent0ef82af7253c1929a3995f271b8b0db462d1a0c3 (diff)
downloadlinux-01dfba93d9dfcf6d7abfc55ff5d9d6e76fa01ba0.tar.bz2
drm/i915: Put the idle reclocking work on our private workqueue as well.
Fixes (again) whole-system lockups due to GPU lockups. Signed-off-by: Eric Anholt <eric@anholt.net>
-rw-r--r--drivers/gpu/drm/i915/intel_display.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 9aa1d2de8a84..f6741032c608 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -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)