All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/1] reservation: wait only with non-zero timeout specified (v2)
@ 2015-01-13  5:50 Jammy Zhou
  2015-01-13  6:50 ` Maarten Lankhorst
  0 siblings, 1 reply; 5+ messages in thread
From: Jammy Zhou @ 2015-01-13  5:50 UTC (permalink / raw)
  To: dri-devel

When the timeout value passed to reservation_object_wait_timeout_rcu
is zero, no wait should be done if the fences are not signaled.

Return '1' for idle and '0' for busy if the specified timeout is '0'
to keep consistent with the case of non-zero timeout.

v2: call fence_put if not signaled in the case of timeout==0

Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
---
 drivers/dma-buf/reservation.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/dma-buf/reservation.c b/drivers/dma-buf/reservation.c
index 3c97c8f..b1d554f 100644
--- a/drivers/dma-buf/reservation.c
+++ b/drivers/dma-buf/reservation.c
@@ -380,12 +380,19 @@ retry:
 	}
 
 	rcu_read_unlock();
-	if (fence) {
+	if (fence && timeout) {
 		ret = fence_wait_timeout(fence, intr, ret);
 		fence_put(fence);
 		if (ret > 0 && wait_all && (i + 1 < shared_count))
 			goto retry;
 	}
+
+	if (fence && !timeout)
+		fence_put(fence);
+
+	if (!fence && !timeout)
+		ret = 1;
+
 	return ret;
 
 unlock_retry:
-- 
1.9.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-01-13  8:53 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-13  5:50 [PATCH 1/1] reservation: wait only with non-zero timeout specified (v2) Jammy Zhou
2015-01-13  6:50 ` Maarten Lankhorst
2015-01-13  7:59   ` Zhou, Jammy
2015-01-13  8:05     ` Maarten Lankhorst
2015-01-13  8:53       ` Zhou, Jammy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.