[Mesa-dev] [PATCH] mesa/st: In the precense of integer buffers enable per buffer blending

Gert Wollny gw.fossdev at gmail.com
Wed Sep 26 07:30:39 UTC 2018


Am Dienstag, den 25.09.2018, 10:20 -0400 schrieb Ilia Mirkin:
> I haven't double-checked yet, but doesn't this result in a reduction
> of functionality for pre-independent-blend GPUs (like the early
> NVIDIA
> Tesla series)? Configuring blending for an integer RT does nothing on
> NVIDIA hardware, so it all works out there just fine...
Unfortunately I can't test this ...

> 
> Perhaps both patches should just be reverted and keep things as they
> were, and let drivers worry about this?
Do as you see fit, my only concern is that there are no regressions,
and if the two patches together still result in regressions then it is
indeed better to revert, 

best, 
Gert


> 
> On Mon, Sep 17, 2018 at 10:06 PM, Marek Olšák <maraeo at gmail.com>
> wrote:
> > Reviewed-by: Marek Olšák <marek.olsak at amd.com>
> > 
> > Marek
> > 
> > On Thu, Sep 13, 2018 at 4:06 AM, Gert Wollny <gw.fossdev at gmail.com>
> > wrote:
> > > From: Gert Wollny <gert.wollny at collabora.com>
> > > 
> > > Since blending will be disabled later for integer formats we have
> > > to
> > > consider that in the case of a mixed set of integer/non-integer
> > > format
> > > buffers blending must be handled on a per buffer basis.
> > > 
> > > Fixes on r600:
> > >   dEQP-GLES31.functional.draw_buffers_indexed.random.
> > >       max_required_draw_buffers.13
> > > 
> > > Fixes:  8fb966688bc1053a48e8ee7f7394ce030bcfd345
> > >   st/mesa: Disable blending for integer formats.
> > > Signed-off-by: Gert Wollny <gert.wollny at collabora.com>
> > > ---
> > >  src/mesa/state_tracker/st_atom_blend.c | 6 ++++++
> > >  1 file changed, 6 insertions(+)
> > > 
> > > diff --git a/src/mesa/state_tracker/st_atom_blend.c
> > > b/src/mesa/state_tracker/st_atom_blend.c
> > > index 804de2f154..d6a9562d25 100644
> > > --- a/src/mesa/state_tracker/st_atom_blend.c
> > > +++ b/src/mesa/state_tracker/st_atom_blend.c
> > > @@ -139,6 +139,12 @@ blend_per_rt(const struct gl_context *ctx,
> > > unsigned num_cb)
> > >        /* this can only happen if GL_ARB_draw_buffers_blend is
> > > enabled */
> > >        return GL_TRUE;
> > >     }
> > > +   if (ctx->DrawBuffer->_IntegerBuffers &&
> > > +       (ctx->DrawBuffer->_IntegerBuffers != cb_mask)) {
> > > +      /* If there is a mix of integer/non-integer buffers then
> > > blending
> > > +       * must be handled on a per buffer basis. */
> > > +      return GL_TRUE;
> > > +   }
> > >     return GL_FALSE;
> > >  }
> > > 
> > > --
> > > 2.16.4
> > > 
> > > _______________________________________________
> > > mesa-dev mailing list
> > > mesa-dev at lists.freedesktop.org
> > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> > 
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev




More information about the mesa-dev mailing list