Commit 786119ff authored by Rob Clark's avatar Rob Clark

dma-buf/fence-chain: Add fence deadline support

Propagate the deadline to all the fences in the chain.

v2: Use dma_fence_chain_contained [Tvrtko]
Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
parent 691fdba3
...@@ -206,6 +206,17 @@ static void dma_fence_chain_release(struct dma_fence *fence) ...@@ -206,6 +206,17 @@ static void dma_fence_chain_release(struct dma_fence *fence)
dma_fence_free(fence); dma_fence_free(fence);
} }
static void dma_fence_chain_set_deadline(struct dma_fence *fence,
ktime_t deadline)
{
dma_fence_chain_for_each(fence, fence) {
struct dma_fence *f = dma_fence_chain_contained(fence);
dma_fence_set_deadline(f, deadline);
}
}
const struct dma_fence_ops dma_fence_chain_ops = { const struct dma_fence_ops dma_fence_chain_ops = {
.use_64bit_seqno = true, .use_64bit_seqno = true,
.get_driver_name = dma_fence_chain_get_driver_name, .get_driver_name = dma_fence_chain_get_driver_name,
...@@ -213,6 +224,7 @@ const struct dma_fence_ops dma_fence_chain_ops = { ...@@ -213,6 +224,7 @@ const struct dma_fence_ops dma_fence_chain_ops = {
.enable_signaling = dma_fence_chain_enable_signaling, .enable_signaling = dma_fence_chain_enable_signaling,
.signaled = dma_fence_chain_signaled, .signaled = dma_fence_chain_signaled,
.release = dma_fence_chain_release, .release = dma_fence_chain_release,
.set_deadline = dma_fence_chain_set_deadline,
}; };
EXPORT_SYMBOL(dma_fence_chain_ops); EXPORT_SYMBOL(dma_fence_chain_ops);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment