[PATCH 5/7] etnaviv: apply non-alpha workaround to temporary copy in acquire_src

Russell King rmk at armlinux.org.uk
Tue Nov 22 16:19:49 UTC 2016


On Tue, Nov 22, 2016 at 05:10:08PM +0100, Lucas Stach wrote:
> Am Dienstag, den 22.11.2016, 16:04 +0000 schrieb Russell King:
> > On Tue, Nov 22, 2016 at 12:44:18PM +0100, Lucas Stach wrote:
> > > The blit into the temporary pixmap needs the same workaround for
> > > non-alpha formats as all other blits.
> > 
> > Okay, I'm including details of this failure when committing it, but it
> > needs to be the first patch in these fixes, because it's the first
> > failure rendercheck finds - it masks the other rendercheck failures.
> > 
> > However, I'd like you to also explain:
> > 
> > > +	/*
> > > +	 * Reset pixmap format to original one, as the calling function may depend
> > > +	 * on this to be unchanged.
> > > +	 */
> > > +	etnaviv_set_format(vSrc, pict);
> > > +
> > 
> > If that's really true, we should be saving and restoring it, not
> > resetting it back to whatever the picture says it should be.  However,
> > I don't think this is necessary - we're not going to be using the
> > source in this path again.
> > 
> It might be unusual, but some of the rendercheck tests use the same
> pixmap for both source and mask. So if we modify the format for the
> alpha workaround we need to reset it back to the original value, to
> allow the mask code to detect the need for the workaround.

In which case we just need to move the "etnaviv_set_format(vMask, pMask);"
in etnaviv_accel_composite_masked() further down.  No need to do all
this juggling around.

-- 
Russell King


More information about the etnaviv mailing list