summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2009-01-22 09:56:58 -0800
committerDave Airlie <airlied@linux.ie>2009-02-08 21:37:41 +1000
commite806b4957412bf472d826bd8cc571da041248799 (patch)
treef74aa5cc7cd25a1ed3a066f9aefdd25affb50e63 /drivers/gpu/drm/i915
parent9b8d5a124f133fe9a75397d20b874844a2e3d7e9 (diff)
downloadlinux-e806b4957412bf472d826bd8cc571da041248799.tar.gz
linux-e806b4957412bf472d826bd8cc571da041248799.tar.bz2
linux-e806b4957412bf472d826bd8cc571da041248799.zip
drm/i915: Suppress GEM teardown on X Server exit in KMS mode.
Fixes hangs when starting X for the second time. Signed-off-by: Eric Anholt <eric@anholt.net> Signed-off-by: Dave Airlie <airlied@linux.ie>
Diffstat (limited to 'drivers/gpu/drm/i915')
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index debad5c04cc0..a590d61ff692 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -3273,6 +3273,9 @@ i915_gem_lastclose(struct drm_device *dev)
{
int ret;
+ if (drm_core_check_feature(dev, DRIVER_MODESET))
+ return;
+
ret = i915_gem_idle(dev);
if (ret)
DRM_ERROR("failed to idle hardware: %d\n", ret);