[Intel-gfx] [PATCH] drm/i915: Ignore EIO whilst waiting without the lock

Chris Wilson chris at chris-wilson.co.uk
Wed Jun 12 11:49:06 CEST 2013


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 <chris at chris-wilson.co.uk>
---
 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




More information about the Intel-gfx mailing list