On Thu, Aug 09, 2012 at 12:29:16PM +0200, Daniel Vetter wrote: > On Thu, Aug 09, 2012 at 10:58:30AM +0100, Chris Wilson wrote: > > Avoid the forcewake overhead when simply retiring requests, as often the > > last seen seqno is good enough to satisfy the retirment process and will > > be promptly re-run in any case. Only ensure that we force the coherent > > seqno read when we are explicitly waiting upon a completion event to be > > sure that none go missing, and also for when we are reporting seqno > > values in case of error or debugging. > > > > This greatly reduces the load for userspace using the busy-ioctl to > > track active buffers, for instance halving the CPU used by X in pushing > > the pixels from a software render (flash). The effect will be even more > > magnified with userptr and so providing a zero-copy upload path in that > > instance, or in similar instances where X is simply compositing DRI > > buffers. > > > > v2: Reverse the polarity of the tachyon stream. Daniel suggested that > > 'force' was too generic for the parameter name and that 'lazy_coherency' > > better encapsulated the semantics of it being an optimization and its > > purpose. Also notice that gen6_get_seqno() is only used by gen6/7 > > chipsets and so the test for IS_GEN6 || IS_GEN7 is redundant in that > > function. > > > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk> > > Yeah, I like the new color. > > Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch> > > I'll muse over this some more before picking it up, just in case I'll > notice a place this could blow up ... Ok, slurped into dinq, thanks for the patch. -Daniel -- Daniel Vetter Mail: daniel at ffwll.ch Mobile: +41 (0)79 365 57 48