/kernel/linux/linux-5.10/drivers/dma-buf/ |
D | sync_file.c | 22 static struct sync_file *sync_file_alloc(void) in sync_file_alloc() 24 struct sync_file *sync_file; in sync_file_alloc() local 26 sync_file = kzalloc(sizeof(*sync_file), GFP_KERNEL); in sync_file_alloc() 27 if (!sync_file) in sync_file_alloc() 30 sync_file->file = anon_inode_getfile("sync_file", &sync_file_fops, in sync_file_alloc() 31 sync_file, 0); in sync_file_alloc() 32 if (IS_ERR(sync_file->file)) in sync_file_alloc() 35 init_waitqueue_head(&sync_file->wq); in sync_file_alloc() 37 INIT_LIST_HEAD(&sync_file->cb.node); in sync_file_alloc() 39 return sync_file; in sync_file_alloc() [all …]
|
D | sync_debug.c | 36 void sync_file_debug_add(struct sync_file *sync_file) in sync_file_debug_add() argument 41 list_add_tail(&sync_file->sync_file_list, &sync_file_list_head); in sync_file_debug_add() 45 void sync_file_debug_remove(struct sync_file *sync_file) in sync_file_debug_remove() argument 50 list_del(&sync_file->sync_file_list); in sync_file_debug_remove() 122 struct sync_file *sync_file) in sync_print_sync_file() argument 127 seq_printf(s, "[%p] %s: %s\n", sync_file, in sync_print_sync_file() 128 sync_file_get_name(sync_file, buf, sizeof(buf)), in sync_print_sync_file() 129 sync_status_str(dma_fence_get_status(sync_file->fence))); in sync_print_sync_file() 131 if (dma_fence_is_array(sync_file->fence)) { in sync_print_sync_file() 132 struct dma_fence_array *array = to_dma_fence_array(sync_file->fence); in sync_print_sync_file() [all …]
|
D | sw_sync.c | 333 struct sync_file *sync_file; in sw_sync_ioctl_create_fence() local 350 sync_file = sync_file_create(&pt->base); in sw_sync_ioctl_create_fence() 352 if (!sync_file) { in sw_sync_ioctl_create_fence() 359 fput(sync_file->file); in sw_sync_ioctl_create_fence() 364 fd_install(fd, sync_file->file); in sw_sync_ioctl_create_fence()
|
D | sync_debug.h | 69 void sync_file_debug_add(struct sync_file *fence); 70 void sync_file_debug_remove(struct sync_file *fence);
|
D | Makefile | 6 obj-$(CONFIG_SYNC_FILE) += sync_file.o
|
D | Kconfig | 18 Documentation/driver-api/sync_file.rst.
|
/kernel/linux/linux-5.10/Documentation/driver-api/ |
D | sync_file.rst | 8 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->file. So it gets an [all …]
|
D | index.rst | 101 sync_file
|
D | dma-buf.rst | 180 .. kernel-doc:: drivers/dma-buf/sync_file.c 183 .. kernel-doc:: include/linux/sync_file.h
|
/kernel/linux/linux-5.10/include/linux/ |
D | sync_file.h | 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);
|
/kernel/linux/linux-5.10/drivers/gpu/drm/virtio/ |
D | virtgpu_ioctl.c | 84 struct sync_file *sync_file; in virtio_gpu_execbuffer_ioctl() local 169 sync_file = sync_file_create(&out_fence->f); in virtio_gpu_execbuffer_ioctl() 170 if (!sync_file) { in virtio_gpu_execbuffer_ioctl() 177 fd_install(out_fence_fd, sync_file->file); in virtio_gpu_execbuffer_ioctl()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/etnaviv/ |
D | etnaviv_gem_submit.c | 435 struct sync_file *sync_file = NULL; in etnaviv_ioctl_gem_submit() local 600 sync_file = sync_file_create(submit->out_fence); in etnaviv_ioctl_gem_submit() 601 if (!sync_file) { in etnaviv_ioctl_gem_submit() 605 fd_install(out_fence_fd, sync_file->file); in etnaviv_ioctl_gem_submit()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/msm/ |
D | msm_gem_submit.c | 585 struct sync_file *sync_file = NULL; in msm_ioctl_gem_submit() local 781 sync_file = sync_file_create(submit->fence); in msm_ioctl_gem_submit() 782 if (!sync_file) { in msm_ioctl_gem_submit() 793 fd_install(out_fence_fd, sync_file->file); in msm_ioctl_gem_submit()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/ |
D | drm_atomic_uapi.c | 1089 struct sync_file *sync_file; member 1103 fence_state->sync_file = sync_file_create(fence); in setup_out_fence() 1104 if (!fence_state->sync_file) in setup_out_fence() 1246 fence_state[i].sync_file->file); in complete_signaling() 1269 if (fence_state[i].sync_file) in complete_signaling() 1270 fput(fence_state[i].sync_file->file); in complete_signaling()
|
D | drm_syncobj.c | 690 struct sync_file *sync_file; in drm_syncobj_export_sync_file() local 700 sync_file = sync_file_create(fence); in drm_syncobj_export_sync_file() 704 if (!sync_file) { in drm_syncobj_export_sync_file() 709 fd_install(fd, sync_file->file); in drm_syncobj_export_sync_file()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_cs.c | 1439 struct sync_file *sync_file; in amdgpu_cs_fence_to_handle_ioctl() local 1475 sync_file = sync_file_create(fence); in amdgpu_cs_fence_to_handle_ioctl() 1477 if (!sync_file) { in amdgpu_cs_fence_to_handle_ioctl() 1482 fd_install(fd, sync_file->file); in amdgpu_cs_fence_to_handle_ioctl()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/vmwgfx/ |
D | vmwgfx_execbuf.c | 4041 struct sync_file *sync_file = NULL; in vmw_execbuf_process() local 4198 sync_file = sync_file_create(&fence->base); in vmw_execbuf_process() 4199 if (!sync_file) { in vmw_execbuf_process() 4212 if (sync_file) { in vmw_execbuf_process() 4215 fput(sync_file->file); in vmw_execbuf_process() 4219 fd_install(out_fence_fd, sync_file->file); in vmw_execbuf_process()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/gem/ |
D | i915_gem_execbuffer.c | 3033 struct sync_file *out_fence = NULL; in i915_gem_do_execbuffer()
|
/kernel/linux/patches/linux-5.10/zhiyuan_patch/ |
D | kernel.patch | 114 obj-$(CONFIG_SYNC_FILE) += sync_file.o
|
/kernel/linux/linux-5.10/ |
D | MAINTAINERS | 16816 F: Documentation/driver-api/sync_file.rst 16820 F: include/linux/sync_file.h 16821 F: include/uapi/linux/sync_file.h
|
/kernel/linux/patches/linux-5.10/imx8mm_patch/patches/drivers/ |
D | 0038_linux_drivers_mxc.patch | 158468 + struct sync_file *sync = NULL; 158489 + /* Create sync_file. */ 158534 + * sync_file_fdget() - get a sync_file from an fd 158537 + * Ensures @fd references a valid sync_file, increments the refcount of the 158538 + * backing file. Returns the sync_file or NULL in case of error. 158540 +static struct sync_file *sync_file_fdget(int fd) 158563 + struct sync_file *sync_file; 158567 + sync_file = sync_file_fdget(FenceFD); 158569 + if (!sync_file) 158574 + numFences = sync_file->num_fences; [all …]
|
/kernel/linux/patches/linux-5.10/yangfan_patch/ |
D | drivers.patch | 7253 #include <linux/sync_file.h> 7298 void sync_file_debug_add(struct sync_file *fence); 7299 void sync_file_debug_remove(struct sync_file *fence); 7303 +static inline void sync_file_debug_add(struct sync_file *fence) {} 7304 +static inline void sync_file_debug_remove(struct sync_file *fence) {}
|