Lines Matching refs:exbuf
36 struct drm_virtgpu_execbuffer *exbuf; member
91 struct drm_virtgpu_execbuffer *exbuf = submit->exbuf; in virtio_gpu_parse_deps() local
93 size_t syncobj_stride = exbuf->syncobj_stride; in virtio_gpu_parse_deps()
94 u32 num_in_syncobjs = exbuf->num_in_syncobjs; in virtio_gpu_parse_deps()
112 u64 address = exbuf->in_syncobjs + i * syncobj_stride; in virtio_gpu_parse_deps()
188 struct drm_virtgpu_execbuffer *exbuf = submit->exbuf; in virtio_gpu_parse_post_deps() local
191 u32 num_out_syncobjs = exbuf->num_out_syncobjs; in virtio_gpu_parse_post_deps()
192 size_t syncobj_stride = exbuf->syncobj_stride; in virtio_gpu_parse_post_deps()
203 u64 address = exbuf->out_syncobjs + i * syncobj_stride; in virtio_gpu_parse_post_deps()
300 struct drm_virtgpu_execbuffer *exbuf = submit->exbuf; in virtio_gpu_init_submit_buflist() local
303 if (!exbuf->num_bo_handles) in virtio_gpu_init_submit_buflist()
306 bo_handles = kvmalloc_array(exbuf->num_bo_handles, sizeof(*bo_handles), in virtio_gpu_init_submit_buflist()
311 if (copy_from_user(bo_handles, u64_to_user_ptr(exbuf->bo_handles), in virtio_gpu_init_submit_buflist()
312 exbuf->num_bo_handles * sizeof(*bo_handles))) { in virtio_gpu_init_submit_buflist()
318 exbuf->num_bo_handles); in virtio_gpu_init_submit_buflist()
353 virtio_gpu_cmd_submit(submit->vgdev, submit->buf, submit->exbuf->size, in virtio_gpu_submit()
368 struct drm_virtgpu_execbuffer *exbuf, in virtio_gpu_init_submit() argument
381 if ((exbuf->flags & VIRTGPU_EXECBUF_RING_IDX) && in virtio_gpu_init_submit()
387 if ((exbuf->flags & VIRTGPU_EXECBUF_FENCE_FD_OUT) || in virtio_gpu_init_submit()
388 exbuf->num_out_syncobjs || in virtio_gpu_init_submit()
389 exbuf->num_bo_handles || in virtio_gpu_init_submit()
409 submit->exbuf = exbuf; in virtio_gpu_init_submit()
416 submit->buf = vmemdup_user(u64_to_user_ptr(exbuf->command), exbuf->size); in virtio_gpu_init_submit()
420 if (exbuf->flags & VIRTGPU_EXECBUF_FENCE_FD_OUT) { in virtio_gpu_init_submit()
439 if (submit->exbuf->flags & VIRTGPU_EXECBUF_FENCE_FD_IN) { in virtio_gpu_wait_in_fence()
441 sync_file_get_fence(submit->exbuf->fence_fd); in virtio_gpu_wait_in_fence()
460 submit->exbuf->fence_fd = submit->out_fence_fd; in virtio_gpu_install_out_fence_fd()
479 struct drm_virtgpu_execbuffer *exbuf = data; in virtio_gpu_execbuffer_ioctl() local
487 if (exbuf->flags & ~VIRTGPU_EXECBUF_FLAGS) in virtio_gpu_execbuffer_ioctl()
490 if (exbuf->flags & VIRTGPU_EXECBUF_RING_IDX) { in virtio_gpu_execbuffer_ioctl()
491 if (exbuf->ring_idx >= vfpriv->num_rings) in virtio_gpu_execbuffer_ioctl()
498 ring_idx = exbuf->ring_idx; in virtio_gpu_execbuffer_ioctl()
503 ret = virtio_gpu_init_submit(&submit, exbuf, dev, file, in virtio_gpu_execbuffer_ioctl()