[PATCH 6/6] intr
Chris Wilson
chris at chris-wilson.co.uk
Wed Jun 7 20:14:43 UTC 2017
---
drivers/gpu/drm/i915/intel_display.c | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 1954e9c98155..baaf9112f7ab 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -13286,11 +13286,20 @@ static int intel_atomic_commit(struct drm_device *dev,
i915_sw_fence_commit(&intel_state->commit_ready);
if (!nonblock) {
- i915_sw_fence_wait(&intel_state->commit_ready);
- intel_atomic_commit_tail(state);
+ struct i915_sw_fence *fence = &intel_state->commit_ready;
+
+ ret = wait_event_interruptible_timeout(fence->wait,
+ i915_sw_fence_done(fence),
+ 60*HZ);
+ if (ret == 0)
+ ret = -ETIMEDOUT;
+ if (ret > 0) {
+ intel_atomic_commit_tail(state);
+ ret = 0;
+ }
}
- return 0;
+ return ret;
}
static const struct drm_crtc_funcs intel_crtc_funcs = {
--
2.11.0
More information about the Intel-gfx-trybot
mailing list