[PATCH 1/5] drm/i915: Suppress EIO during set-to-gtt

Chris Wilson
2012-04-14T08:56:07Z

If we fail to flush the rendering to an object already bound to the GTT
because the hardware is edge, all is good!

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/i915_gem.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 71934dd..16591ad 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2880,12 +2880,12 @@ i915_gem_object_set_to_gtt_domain(struct drm_i915_gem_object *obj, bool write)
return 0;

ret = i915_gem_object_flush_gpu_write_domain(obj);
- if (ret)
+ if (ret && ret != -EIO)
return ret;

if (obj->pending_gpu_write || write) {
ret = i915_gem_object_wait_rendering(obj);
- if (ret)
+ if (ret && ret != -EIO)
return ret;
}

--
1.7.10