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

Ilia Mirkin imirkin at alum.mit.edu
Tue Sep 25 14:20:04 UTC 2018


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...

Perhaps both patches should just be reverted and keep things as they
were, and let drivers worry about this?

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