From d3ccd3c44b24e5a524fe9035c01ec84095f2bae5 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Wed, 12 Jun 2013 10:34:21 +0100 Subject: [PATCH] drm/i915: Ignore EIO whilst waiting without the lock As we play games in set-to-domain in order to first perform a lockless wait on outstanding rendering, it is possible that we report a spurious GPU hang during that wait. After reclaiming the lock we then want to do a more thorough test as to whether the hang is indeed fatal and what the correct error code we should return. This naturally falls out of the locked wait we perform as the second task in set-to-domain. References: https://bugs.freedesktop.org/show_bug.cgi?id=65495 Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 773c8f4..70fe8a1 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -1214,7 +1214,7 @@ i915_gem_set_domain_ioctl(struct drm_device *dev, void *data, * to catch cases where we are gazumped. */ ret = i915_gem_object_wait_rendering__nonblocking(obj, !write_domain); - if (ret) + if (ret && ret != -EIO) goto unref; if (read_domains & I915_GEM_DOMAIN_GTT) { -- 1.7.10.4