[Intel-gfx] [PATCH v5 09/35] drm/i915: Force MMIO flips when scheduler enabled

Jesse Barnes jbarnes at virtuousgeek.org
Mon Feb 22 20:42:48 UTC 2016

On 02/20/2016 01:22 AM, Chris Wilson wrote:
> On Fri, Feb 19, 2016 at 11:28:05AM -0800, Jesse Barnes wrote:
>> On 02/18/2016 06:26 AM, John.C.Harrison at Intel.com wrote:
>>> From: John Harrison <John.C.Harrison at Intel.com>
>>> MMIO flips are the preferred mechanism now
> Because introducing variable latency in waking up a big core is a good
> idea?

Is the latency variability really that bad?  I'm not too concerned about waking up the core either, I think it's going to be hit up quite a bit in these situations anyway, and vblanks should be driving the rendering as well.

>> but more importantly, pipe
>>> based flips cause issues for the scheduler. Specifically, submitting
>>> work to the rings around the side of the scheduler could cause that
>>> work to be lost if the scheduler generates a pre-emption event on that
>>> ring.
> No. That is just incredibily bad design.
>> Why can't we use mmio flips unconditionally?  Maarten or Ville?
> Why would we want to? CS flips work just fine in execlists and no reason
> was ever given as to why they were not enabled, just laziness.

I'm not saying it can't be done, but I thought with atomic we decided to go with mmio because it makes things a lot simpler (iirc Ville's design did that way back?).

I'm fine with either, but it seems like we should settle on one rather than trying to maintain two different ways of flipping.  We'll have work to do either way.


More information about the Intel-gfx mailing list