Lines Matching +full:composite +full:- +full:in

2  * SPDX-License-Identifier: MIT
4 * Copyright © 2014-2016 Intel Corporation
7 #include <linux/dma-fence-array.h>
31 * last_read - hence we always set both read and write busy for in __busy_write_id()
54 * 1. A composite fence (dma_fence_array) constructed of i915 requests in __busy_set_if_active()
55 * created during a parallel submission. In this case we deconstruct the in __busy_set_if_active()
56 * composite fence into individual i915 requests and check the status of in __busy_set_if_active()
63 struct dma_fence **child = array->fences; in __busy_set_if_active()
64 unsigned int nchild = array->num_fences; in __busy_set_if_active()
72 &current_fence->flags)) { in __busy_set_if_active()
78 return flag(rq->engine->uabi_class); in __busy_set_if_active()
79 } while (--nchild); in __busy_set_if_active()
81 /* All requests in array complete, not busy */ in __busy_set_if_active()
91 /* Beware type-expansion follies! */ in __busy_set_if_active()
92 BUILD_BUG_ON(!typecheck(u16, rq->engine->uabi_class)); in __busy_set_if_active()
93 return flag(rq->engine->uabi_class); in __busy_set_if_active()
122 err = -ENOENT; in i915_gem_busy_ioctl()
124 obj = i915_gem_object_lookup_rcu(file, args->handle); in i915_gem_busy_ioctl()
130 * non-i915 fences, i.e. even though we may report the object as idle, in i915_gem_busy_ioctl()
131 * a call to set-domain may still stall waiting for foreign rendering. in i915_gem_busy_ioctl()
132 * This also means that wait-ioctl may report an object as busy, in i915_gem_busy_ioctl()
133 * where busy-ioctl considers it idle. in i915_gem_busy_ioctl()
140 * args->busy = in i915_gem_busy_ioctl()
141 * !dma_resv_test_signaled(obj->resv, DMA_RESV_USAGE_READ); in i915_gem_busy_ioctl()
142 * to report the overall busyness. This is what the wait-ioctl does. in i915_gem_busy_ioctl()
145 args->busy = 0; in i915_gem_busy_ioctl()
146 dma_resv_iter_begin(&cursor, obj->base.resv, DMA_RESV_USAGE_READ); in i915_gem_busy_ioctl()
149 args->busy = 0; in i915_gem_busy_ioctl()
153 args->busy |= busy_check_writer(fence); in i915_gem_busy_ioctl()
156 args->busy |= busy_check_reader(fence); in i915_gem_busy_ioctl()