dma-buf/fence: don't wait when specified timeout is zero

When specified timeout is zero for fence_wait_timeout, just check if the fence
is signaled or not without wait.

Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-By: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
This commit is contained in:
Jammy Zhou 2015-01-21 18:35:48 +08:00 committed by Sumit Semwal
parent fb8b7d2b9d
commit 847b19a39e

View File

@ -159,6 +159,9 @@ fence_wait_timeout(struct fence *fence, bool intr, signed long timeout)
if (WARN_ON(timeout < 0)) if (WARN_ON(timeout < 0))
return -EINVAL; return -EINVAL;
if (timeout == 0)
return fence_is_signaled(fence);
trace_fence_wait_start(fence); trace_fence_wait_start(fence);
ret = fence->ops->wait(fence, intr, timeout); ret = fence->ops->wait(fence, intr, timeout);
trace_fence_wait_end(fence); trace_fence_wait_end(fence);