• Home
  • Raw
  • Download

Lines Matching refs:fence

46 	struct virtio_gpu_fence *fence = to_virtio_fence(f);  in virtio_signaled()  local
48 if (atomic64_read(&fence->drv->last_seq) >= fence->seq) in virtio_signaled()
55 struct virtio_gpu_fence *fence = to_virtio_fence(f); in virtio_fence_value_str() local
57 snprintf(str, size, "%llu", fence->seq); in virtio_fence_value_str()
62 struct virtio_gpu_fence *fence = to_virtio_fence(f); in virtio_timeline_value_str() local
64 snprintf(str, size, "%llu", (u64)atomic64_read(&fence->drv->last_seq)); in virtio_timeline_value_str()
79 struct virtio_gpu_fence **fence) in virtio_gpu_fence_emit() argument
84 *fence = kmalloc(sizeof(struct virtio_gpu_fence), GFP_ATOMIC); in virtio_gpu_fence_emit()
85 if ((*fence) == NULL) in virtio_gpu_fence_emit()
89 (*fence)->drv = drv; in virtio_gpu_fence_emit()
90 (*fence)->seq = ++drv->sync_seq; in virtio_gpu_fence_emit()
91 dma_fence_init(&(*fence)->f, &virtio_fence_ops, &drv->lock, in virtio_gpu_fence_emit()
92 drv->context, (*fence)->seq); in virtio_gpu_fence_emit()
93 dma_fence_get(&(*fence)->f); in virtio_gpu_fence_emit()
94 list_add_tail(&(*fence)->node, &drv->fences); in virtio_gpu_fence_emit()
98 cmd_hdr->fence_id = cpu_to_le64((*fence)->seq); in virtio_gpu_fence_emit()
106 struct virtio_gpu_fence *fence, *tmp; in virtio_gpu_fence_event_process() local
111 list_for_each_entry_safe(fence, tmp, &drv->fences, node) { in virtio_gpu_fence_event_process()
112 if (last_seq < fence->seq) in virtio_gpu_fence_event_process()
114 dma_fence_signal_locked(&fence->f); in virtio_gpu_fence_event_process()
115 list_del(&fence->node); in virtio_gpu_fence_event_process()
116 dma_fence_put(&fence->f); in virtio_gpu_fence_event_process()