On Fri, Apr 28, 2017 at 08:41:36AM +0100, Chris Wilson wrote: > Track the latest fence waited upon on each context, and only add a new > asynchronous wait if the new fence is more recent than the recorded > fence for that context. This requires us to filter out unordered > timelines, which are noted by DMA_FENCE_NO_CONTEXT. However, in the > absence of a universal identifier, we have to use our own > i915->mm.unordered_timeline token. > > v2: Throw around the debug crutches > v3: Inline the likely case of the pre-allocation cache being full. > v4: Drop the pre-allocation support, we can lose the most recent fence > in case of allocation failure -- it just means we may emit more awaits > than strictly necessary but will not break. > v5: Trim allocation size for leaf nodes, they only need an array of u32 > not pointers. > v6: Create mock_timeline to tidy selftest writing > v7: s/intel_timeline_sync_get/intel_timeline_sync_is_later/ (Tvrtko) > v8: Prune the stale sync points when we idle. > v9: Include a small benchmark in the kselftests > v10: Separate the idr implementation into its own compartment. Before you complain, I haven't yet attempted to refactor the kselftests to avoid deep indentation. -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx