Lines Matching refs:fences

31  * fence context, this allows checking if fences belong to the same
38 * DOC: DMA fences overview
40 * DMA fences, represented by &struct dma_fence, are the kernel internal
46 * dma_fence_context_alloc(), and all fences on the same context are
49 * Since the purposes of fences is to facilitate cross-device and
52 * - Individual fences can be exposed as a &sync_file, accessed as a file
63 * implicit fences are stored in &struct dma_resv through the
76 * further command submission and force complete all in-flight fences, e.g.
85 * Drivers should not try to second guess timeout handling of fences from
90 * which completes the fences, with dma_fence_begin_signalling() and
170 * there's the tail of command submission, after fences are published,
175 * between when fences for an atomic modeset are published, and when the
225 * as the new fences are installed, even before dma_resv_unlock() is called.
488 * dma_fence_release - default relese function for fences
782 static bool dma_fence_test_signaled_any(struct dma_fence **fences, uint32_t count, uint32_t *idx)
787 struct dma_fence *fence = fences[i];
801 * @fences: array of fences to wait on
802 * @count: number of fences to wait on
813 * caller needs to hold a reference to all fences in the array, otherwise a
818 signed long dma_fence_wait_any_timeout(struct dma_fence **fences, uint32_t count, bool intr, signed long timeout,
825 if (WARN_ON(!fences || !count || timeout < 0)) {
831 if (dma_fence_is_signaled(fences[i]) && idx) {
846 struct dma_fence *fence = fences[i];
863 if (dma_fence_test_signaled_any(fences, count, idx)) {
875 dma_fence_remove_callback(fences[i], &cb[i].base);
896 * context and seqno are used for easy comparison between fences, allowing