[Intel-gfx] [PATCH v4] drm/i915: Implement inter-engine read-read optimisations

Chris Wilson chris at chris-wilson.co.uk
Fri Mar 27 04:38:53 PDT 2015


On Fri, Mar 27, 2015 at 11:22:15AM +0000, Tvrtko Ursulin wrote:
> On 03/26/2015 09:31 PM, Chris Wilson wrote:
> >I want to replace the (| 1) with
> >(| intel_ring_flag(obj->last_write_request->ring); but it exists because
> >we couldn't be sure if any userspace depended on exactly (0, 1).
> 
> I don't get it, it is exported to userspace and now it is different,
> why is that OK?

The ABI is that the upper 16bits indicate the active rings. That is what
userspace requires. We set the low bit to indicate busy because we were
afraid of confusing older userspace, but that was unfounded if we check
the history of all users, so we can safely repurpose the low 16bits to
be active write ring.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list