Home
last modified time | relevance | path

Searched refs:sync_file (Results 1 – 17 of 17) sorted by relevance

/linux/drivers/dma-buf/
H A Dsync_file.c3 * drivers/dma-buf/sync_file.c
18 #include <linux/sync_file.h>
19 #include <uapi/linux/sync_file.h>
23 static struct sync_file *sync_file_alloc(void) in sync_file_alloc()
25 struct sync_file *sync_file; in sync_file_alloc() local
27 sync_file = kzalloc(sizeof(*sync_file), GFP_KERNEL); in sync_file_alloc()
28 if (!sync_file) in sync_file_alloc()
31 sync_file in sync_file_alloc()
49 struct sync_file *sync_file; fence_check_cb_func() local
67 struct sync_file *sync_file; sync_file_create() local
105 struct sync_file *sync_file; sync_file_get_fence() local
132 sync_file_get_name(struct sync_file * sync_file,char * buf,int len) sync_file_get_name() argument
168 struct sync_file *sync_file; sync_file_merge() local
187 struct sync_file *sync_file = file->private_data; sync_file_release() local
199 struct sync_file *sync_file = file->private_data; sync_file_poll() local
213 sync_file_ioctl_merge(struct sync_file * sync_file,unsigned long arg) sync_file_ioctl_merge() argument
295 sync_file_ioctl_fence_info(struct sync_file * sync_file,unsigned long arg) sync_file_ioctl_fence_info() argument
366 sync_file_ioctl_set_deadline(struct sync_file * sync_file,unsigned long arg) sync_file_ioctl_set_deadline() argument
385 struct sync_file *sync_file = file->private_data; sync_file_ioctl() local
[all...]
H A Dsw_sync.c12 #include <linux/sync_file.h>
47 * @fence: return the fd of the new sync_file with the created fence
349 struct sync_file *sync_file; in sw_sync_ioctl_create_fence() local
366 sync_file = sync_file_create(&pt->base); in sw_sync_ioctl_create_fence()
368 if (!sync_file) { in sw_sync_ioctl_create_fence()
375 fput(sync_file->file); in sw_sync_ioctl_create_fence()
380 fd_install(fd, sync_file->file); in sw_sync_ioctl_create_fence()
H A DMakefile6 obj-$(CONFIG_SYNC_FILE) += sync_file.o
/linux/Documentation/driver-api/
H A Dsync_file.rst8 sync_file API is, and how drivers can support it. Sync file is the carrier of
12 The sync_file API is meant to be used to send and receive fence information
15 driver) sends the fence related to the buffer to userspace via a sync_file.
17 The sync_file then can be sent to the consumer (DRM driver for example), that
32 Sync files can go either to or from userspace. When a sync_file is sent from
39 On the other hand if the driver receives fence(s) through a sync_file from
47 When a driver needs to send an out-fence userspace it creates a sync_file.
51 struct sync_file *sync_file_create(struct dma_fence *fence);
53 The caller pass the out-fence and gets back the sync_file. That is just the
54 first step, next it needs to install an fd on sync_file
[all...]
H A Dindex.rst141 sync_file
H A Ddma-buf.rst225 .. kernel-doc:: drivers/dma-buf/sync_file.c
228 .. kernel-doc:: include/linux/sync_file.h
234 .. kernel-doc:: include/uapi/linux/sync_file.h
/linux/include/linux/
H A Dsync_file.h2 * include/linux/sync_file.h
24 * struct sync_file - sync file to export to the userspace
28 * @flags: flags for the sync_file
29 * @fence: fence with the fences in the sync_file
35 struct sync_file { struct
58 struct sync_file *sync_file_create(struct dma_fence *fence); argument
60 char *sync_file_get_name(struct sync_file *sync_file, char *buf, int len);
46 sync_file_listsync_file global() argument
/linux/drivers/gpu/drm/virtio/
H A Dvirtgpu_submit.c13 #include <linux/sync_file.h>
40 struct sync_file *sync_file; member
347 if (submit->sync_file) in virtio_gpu_cleanup_submit()
348 fput(submit->sync_file->file); in virtio_gpu_cleanup_submit()
363 submit->sync_file = NULL; in virtio_gpu_complete_submit()
427 submit->sync_file = sync_file_create(&out_fence->f); in virtio_gpu_init_submit()
428 if (!submit->sync_file) in virtio_gpu_init_submit()
459 if (submit->sync_file) { in virtio_gpu_install_out_fence_fd()
461 fd_install(submit->out_fence_fd, submit->sync_file in virtio_gpu_install_out_fence_fd()
[all...]
/linux/drivers/gpu/drm/msm/
H A Dmsm_gem_submit.c9 #include <linux/sync_file.h>
554 struct sync_file *sync_file = NULL; in msm_ioctl_gem_submit() local
771 sync_file = sync_file_create(submit->user_fence); in msm_ioctl_gem_submit()
772 if (!sync_file) { in msm_ioctl_gem_submit()
775 fd_install(out_fence_fd, sync_file->file); in msm_ioctl_gem_submit()
817 if (sync_file) in msm_ioctl_gem_submit()
818 fput(sync_file->file); in msm_ioctl_gem_submit()
H A Dmsm_gem_vma.c10 #include "linux/sync_file.h"
1342 struct sync_file *sync_file = NULL; in msm_ioctl_vm_bind() local
1462 sync_file = sync_file_create(job->fence); in msm_ioctl_vm_bind()
1463 if (!sync_file) { in msm_ioctl_vm_bind()
1466 fd_install(out_fence_fd, sync_file->file); in msm_ioctl_vm_bind()
1499 if (sync_file) in msm_ioctl_vm_bind()
1500 fput(sync_file->file); in msm_ioctl_vm_bind()
/linux/drivers/gpu/drm/etnaviv/
H A Detnaviv_gem_submit.c10 #include <linux/sync_file.h>
422 struct sync_file *sync_file = NULL; in etnaviv_ioctl_gem_submit() local
601 sync_file = sync_file_create(submit->out_fence); in etnaviv_ioctl_gem_submit()
602 if (!sync_file) { in etnaviv_ioctl_gem_submit()
611 fd_install(out_fence_fd, sync_file->file); in etnaviv_ioctl_gem_submit()
/linux/drivers/gpu/drm/
H A Ddrm_atomic_uapi.c42 #include <linux/sync_file.h>
1141 * merged one, the sync_file framework will handle both cases and use a
1175 struct sync_file *sync_file; member
1189 fence_state->sync_file = sync_file_create(fence); in setup_out_fence()
1190 if (!fence_state->sync_file) in setup_out_fence()
1334 fence_state[i].sync_file->file); in complete_signaling()
1357 if (fence_state[i].sync_file) in complete_signaling()
1358 fput(fence_state[i].sync_file->file); in complete_signaling()
H A Ddrm_syncobj.c172 * import/export the syncobj's current fence from/to a &sync_file.
202 #include <linux/sync_file.h>
780 struct sync_file *sync_file; in drm_syncobj_export_sync_file() local
790 sync_file = sync_file_create(fence); in drm_syncobj_export_sync_file()
794 if (!sync_file) { in drm_syncobj_export_sync_file()
799 fd_install(fd, sync_file->file); in drm_syncobj_export_sync_file()
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_cs.c1595 struct sync_file *sync_file; in amdgpu_cs_fence_to_handle_ioctl() local
1631 sync_file = sync_file_create(fence); in amdgpu_cs_fence_to_handle_ioctl()
1633 if (!sync_file) { in amdgpu_cs_fence_to_handle_ioctl()
1638 fd_install(fd, sync_file->file); in amdgpu_cs_fence_to_handle_ioctl()
/linux/drivers/gpu/drm/i915/gem/
H A Di915_gem_execbuffer.c8 #include <linux/sync_file.h>
3196 static struct sync_file *
3199 struct sync_file *out_fence = NULL; in eb_composite_fence_create()
3232 /* sync_file now owns fence_arry, drop creation ref */ in eb_composite_fence_create()
3243 static struct sync_file *
3247 struct sync_file *out_fence = NULL; in eb_fences_add()
3305 static struct sync_file *
3309 struct sync_file *out_fence = NULL; in eb_requests_create()
3360 struct sync_file *out_fence = NULL; in i915_gem_do_execbuffer()
/linux/drivers/gpu/drm/vmwgfx/
H A Dvmwgfx_execbuf.c18 #include <linux/sync_file.h>
4084 struct sync_file *sync_file = NULL; in vmw_execbuf_process() local
4228 sync_file = sync_file_create(&fence->base); in vmw_execbuf_process()
4229 if (!sync_file) { in vmw_execbuf_process()
4242 if (sync_file) { in vmw_execbuf_process()
4245 fput(sync_file->file); in vmw_execbuf_process()
4249 fd_install(out_fence_fd, sync_file->file); in vmw_execbuf_process()
/linux/
H A DMAINTAINERS24344 F: Documentation/driver-api/sync_file.rst
24348 F: include/linux/sync_file.h
24349 F: include/uapi/linux/sync_file.h