Lines Matching refs:fence
60 struct virtio_gpu_fence *fence = to_virtio_gpu_fence(f); in virtio_gpu_timeline_value_str() local
63 (u64)atomic64_read(&fence->drv->last_fence_id)); in virtio_gpu_timeline_value_str()
80 struct virtio_gpu_fence *fence = kzalloc(sizeof(struct virtio_gpu_fence), in virtio_gpu_fence_alloc() local
83 if (!fence) in virtio_gpu_fence_alloc()
84 return fence; in virtio_gpu_fence_alloc()
86 fence->drv = drv; in virtio_gpu_fence_alloc()
87 fence->ring_idx = ring_idx; in virtio_gpu_fence_alloc()
88 fence->emit_fence_info = !(base_fence_ctx == drv->context); in virtio_gpu_fence_alloc()
95 dma_fence_init(&fence->f, &virtio_gpu_fence_ops, &drv->lock, in virtio_gpu_fence_alloc()
98 return fence; in virtio_gpu_fence_alloc()
103 struct virtio_gpu_fence *fence) in virtio_gpu_fence_emit() argument
109 fence->fence_id = fence->f.seqno = ++drv->current_fence_id; in virtio_gpu_fence_emit()
110 dma_fence_get(&fence->f); in virtio_gpu_fence_emit()
111 list_add_tail(&fence->node, &drv->fences); in virtio_gpu_fence_emit()
114 trace_dma_fence_emit(&fence->f); in virtio_gpu_fence_emit()
117 cmd_hdr->fence_id = cpu_to_le64(fence->fence_id); in virtio_gpu_fence_emit()
120 if (fence->emit_fence_info) { in virtio_gpu_fence_emit()
123 cmd_hdr->ring_idx = (u8)fence->ring_idx; in virtio_gpu_fence_emit()