[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