[FOR_CI_v3 10/15] drm/i915: Update wait_request to consider engine reset
Arun Siluvery
arun.siluvery at linux.intel.com
Tue Jul 5 09:55:54 UTC 2016
__i915_wait_request() is updated such that if an engine reset is pending,
we request the waiter to try again so that engine recovery can continue.
If i915_wait_request does not take per-engine hang recovery into account
there is no way for a waiting thread to know that a per-engine recovery is
about to happen and that it needs to back off.
Signed-off-by: Arun Siluvery <arun.siluvery at linux.intel.com>
---
drivers/gpu/drm/i915/i915_gem.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 74e68e8..f199966 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1501,6 +1501,11 @@ int __i915_wait_request(struct drm_i915_gem_request *req,
break;
}
+ if (i915_reset_in_progress(&req->i915->gpu_error)) {
+ ret = -EAGAIN;
+ break;
+ }
+
/* Ensure that even if the GPU hangs, we get woken up.
*
* However, note that if no one is waiting, we never notice
--
1.9.1
More information about the Intel-gfx-trybot
mailing list