diff options
author | Ben Widawsky <benjamin.widawsky@intel.com> | 2013-04-09 03:43:56 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-04-18 09:43:16 +0200 |
commit | b7c36d25461ae41e6562a2f70cb3423bcf8af2d2 (patch) | |
tree | 6b6a9bb0d909fb2ee7c90bdb79aa1b316ddc69ed /drivers/gpu/drm/i915/i915_drv.c | |
parent | drm/i915: NULL aliasing_ppgtt on cleanup (diff) | |
download | linux-b7c36d25461ae41e6562a2f70cb3423bcf8af2d2.tar.xz linux-b7c36d25461ae41e6562a2f70cb3423bcf8af2d2.zip |
drm/i915: Allow PPGTT enable to fail
I'm really not happy that we have to support this, but this will be the
simplest way to handle cases where PPGTT init can fail, which I promise
will be coming in the future.
v2: Resolve conflicts due to patch series reordering.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net> (v1)
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_drv.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index 70d10de73bbd..bddb9a50ea76 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -927,8 +927,11 @@ int i915_reset(struct drm_device *dev) ring->init(ring); i915_gem_context_init(dev); - if (dev_priv->mm.aliasing_ppgtt) - dev_priv->mm.aliasing_ppgtt->enable(dev); + if (dev_priv->mm.aliasing_ppgtt) { + ret = dev_priv->mm.aliasing_ppgtt->enable(dev); + if (ret) + i915_gem_cleanup_aliasing_ppgtt(dev); + } /* * It would make sense to re-init all the other hw state, at |