Lines Matching defs:timeline
30 u64 timeline;
156 /* Make the cached node available for reuse with any timeline */
157 ref->cache->timeline = 0; /* needs cmpxchg(u64) */
169 /* Finally free the discarded timeline tree */
236 GEM_BUG_ON(idx == 0); /* 0 is the unordered timeline, rsvd for cache */
239 * We track the most recently used timeline to skip a rbtree search
243 * current timeline.
247 u64 cached = READ_ONCE(it->timeline);
254 * An unclaimed cache [.timeline=0] can only be claimed once.
258 * idx. If, and only if, the timeline is currently zero is it
263 if (!cached && !cmpxchg64(&it->timeline, 0, idx))
274 if (it->timeline < idx) {
276 } else if (it->timeline > idx) {
307 if (node->timeline == idx)
310 if (node->timeline < idx)
326 node->timeline = idx;
373 GEM_BUG_ON(node->timeline != engine->kernel_context->timeline->fence_context);
377 * outside of the kernel_context timeline mutex and so someone
420 * This request is on the kernel_context timeline, and so
485 /* We expect the caller to manage the exclusive timeline ordering */
771 return node->timeline == idx && !i915_active_fence_isset(&node->base);
805 if (node->timeline < idx)
814 * any idle-barriers on this timeline that we missed, or just use
822 if (node->timeline > idx)
825 if (node->timeline < idx)
833 * kernel_context timeline, which notably we do not hold
878 u64 idx = engine->kernel_context->timeline->fence_context;
892 node->timeline = idx;
967 if (it->timeline < node->timeline)
995 GEM_BUG_ON(i915_request_timeline(rq) != engine->kernel_context->timeline);
1015 * __i915_active_fence_set: Update the last active fence along its timeline
1019 * Records the new @fence as the last active fence along its timeline in
1024 * fences within the timeline of the i915_active_fence is understood, it
1063 * Note the strong ordering of the timeline also provides consistent
1098 * and we know that we are first on the timeline. If it is still
1124 /* Must maintain timeline ordering wrt previous active requests */