aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/i915/i915_irq.c3
-rw-r--r--drivers/gpu/drm/i915/i915_request.c2
-rw-r--r--drivers/gpu/drm/i915/i915_request.h5
-rw-r--r--drivers/gpu/drm/i915/intel_breadcrumbs.c3
-rw-r--r--drivers/gpu/drm/i915/intel_lrc.c2
-rw-r--r--drivers/gpu/drm/i915/intel_pm.c2
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.c3
7 files changed, 11 insertions, 9 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 1abfc3fa76ad..5fd5080c4ccb 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -1182,8 +1182,7 @@ static void notify_ring(struct intel_engine_cs *engine)
1182 struct i915_request *waiter = wait->request; 1182 struct i915_request *waiter = wait->request;
1183 1183
1184 if (waiter && 1184 if (waiter &&
1185 !test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, 1185 !i915_request_signaled(waiter) &&
1186 &waiter->fence.flags) &&
1187 intel_wait_check_request(wait, waiter)) 1186 intel_wait_check_request(wait, waiter))
1188 rq = i915_request_get(waiter); 1187 rq = i915_request_get(waiter);
1189 1188
diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
index c7ce27785cda..426194ee978a 100644
--- a/drivers/gpu/drm/i915/i915_request.c
+++ b/drivers/gpu/drm/i915/i915_request.c
@@ -198,7 +198,7 @@ static void __retire_engine_request(struct intel_engine_cs *engine,
198 spin_unlock(&engine->timeline.lock); 198 spin_unlock(&engine->timeline.lock);
199 199
200 spin_lock(&rq->lock); 200 spin_lock(&rq->lock);
201 if (!test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &rq->fence.flags)) 201 if (!i915_request_signaled(rq))
202 dma_fence_signal_locked(&rq->fence); 202 dma_fence_signal_locked(&rq->fence);
203 if (test_bit(DMA_FENCE_FLAG_ENABLE_SIGNAL_BIT, &rq->fence.flags)) 203 if (test_bit(DMA_FENCE_FLAG_ENABLE_SIGNAL_BIT, &rq->fence.flags))
204 intel_engine_cancel_signaling(rq); 204 intel_engine_cancel_signaling(rq);
diff --git a/drivers/gpu/drm/i915/i915_request.h b/drivers/gpu/drm/i915/i915_request.h
index d014b0605445..c0f084ca4f29 100644
--- a/drivers/gpu/drm/i915/i915_request.h
+++ b/drivers/gpu/drm/i915/i915_request.h
@@ -280,6 +280,11 @@ long i915_request_wait(struct i915_request *rq,
280#define I915_WAIT_ALL BIT(3) /* used by i915_gem_object_wait() */ 280#define I915_WAIT_ALL BIT(3) /* used by i915_gem_object_wait() */
281#define I915_WAIT_FOR_IDLE_BOOST BIT(4) 281#define I915_WAIT_FOR_IDLE_BOOST BIT(4)
282 282
283static inline bool i915_request_signaled(const struct i915_request *rq)
284{
285 return test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &rq->fence.flags);
286}
287
283static inline bool intel_engine_has_started(struct intel_engine_cs *engine, 288static inline bool intel_engine_has_started(struct intel_engine_cs *engine,
284 u32 seqno); 289 u32 seqno);
285static inline bool intel_engine_has_completed(struct intel_engine_cs *engine, 290static inline bool intel_engine_has_completed(struct intel_engine_cs *engine,
diff --git a/drivers/gpu/drm/i915/intel_breadcrumbs.c b/drivers/gpu/drm/i915/intel_breadcrumbs.c
index 4fad93fe3678..b58915b8708b 100644
--- a/drivers/gpu/drm/i915/intel_breadcrumbs.c
+++ b/drivers/gpu/drm/i915/intel_breadcrumbs.c
@@ -631,8 +631,7 @@ static int intel_breadcrumbs_signaler(void *arg)
631 rq->signaling.wait.seqno = 0; 631 rq->signaling.wait.seqno = 0;
632 __list_del_entry(&rq->signaling.link); 632 __list_del_entry(&rq->signaling.link);
633 633
634 if (!test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, 634 if (!i915_request_signaled(rq)) {
635 &rq->fence.flags)) {
636 list_add_tail(&rq->signaling.link, 635 list_add_tail(&rq->signaling.link,
637 &list); 636 &list);
638 i915_request_get(rq); 637 i915_request_get(rq);
diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index f0fa0f767eb6..382a1262f75a 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -816,7 +816,7 @@ static void execlists_cancel_requests(struct intel_engine_cs *engine)
816 list_for_each_entry(rq, &engine->timeline.requests, link) { 816 list_for_each_entry(rq, &engine->timeline.requests, link) {
817 GEM_BUG_ON(!rq->global_seqno); 817 GEM_BUG_ON(!rq->global_seqno);
818 818
819 if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &rq->fence.flags)) 819 if (i915_request_signaled(rq))
820 continue; 820 continue;
821 821
822 dma_fence_set_error(&rq->fence, -EIO); 822 dma_fence_set_error(&rq->fence, -EIO);
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 8b63afa3a221..fdc28a3d2936 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -6662,7 +6662,7 @@ void gen6_rps_boost(struct i915_request *rq,
6662 if (!rps->enabled) 6662 if (!rps->enabled)
6663 return; 6663 return;
6664 6664
6665 if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &rq->fence.flags)) 6665 if (i915_request_signaled(rq))
6666 return; 6666 return;
6667 6667
6668 /* Serializes with i915_request_retire() */ 6668 /* Serializes with i915_request_retire() */
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 26b7274a2d43..e39e483d8d16 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -836,8 +836,7 @@ static void cancel_requests(struct intel_engine_cs *engine)
836 list_for_each_entry(request, &engine->timeline.requests, link) { 836 list_for_each_entry(request, &engine->timeline.requests, link) {
837 GEM_BUG_ON(!request->global_seqno); 837 GEM_BUG_ON(!request->global_seqno);
838 838
839 if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, 839 if (i915_request_signaled(request))
840 &request->fence.flags))
841 continue; 840 continue;
842 841
843 dma_fence_set_error(&request->fence, -EIO); 842 dma_fence_set_error(&request->fence, -EIO);