mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-18 06:33:43 -04:00
dma-buf: add enum dma_resv_usage v4
This change adds the dma_resv_usage enum and allows us to specify why a
dma_resv object is queried for its containing fences.
Additional to that a dma_resv_usage_rw() helper function is added to aid
retrieving the fences for a read or write userspace submission.
This is then deployed to the different query functions of the dma_resv
object and all of their users. When the write paratermer was previously
true we now use DMA_RESV_USAGE_WRITE and DMA_RESV_USAGE_READ otherwise.
v2: add KERNEL/OTHER in separate patch
v3: some kerneldoc suggestions by Daniel
v4: some more kerneldoc suggestions by Daniel, fix missing cases lost in
the rebase pointed out by Bas.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20220407085946.744568-2-christian.koenig@amd.com
This commit is contained in:
@@ -518,9 +518,10 @@ static int virtio_gpu_wait_ioctl(struct drm_device *dev, void *data,
|
||||
return -ENOENT;
|
||||
|
||||
if (args->flags & VIRTGPU_WAIT_NOWAIT) {
|
||||
ret = dma_resv_test_signaled(obj->resv, true);
|
||||
ret = dma_resv_test_signaled(obj->resv, DMA_RESV_USAGE_READ);
|
||||
} else {
|
||||
ret = dma_resv_wait_timeout(obj->resv, true, true, timeout);
|
||||
ret = dma_resv_wait_timeout(obj->resv, DMA_RESV_USAGE_READ,
|
||||
true, timeout);
|
||||
}
|
||||
if (ret == 0)
|
||||
ret = -EBUSY;
|
||||
|
||||
Reference in New Issue
Block a user