[Mesa-dev] [PATCH] egl: dri2: Use present extension. (Was: Re: [RFC] egl: Add DRI3 support to the EGL backend.)

Eric Anholt eric at anholt.net
Fri Nov 7 17:40:44 PST 2014

Ian Romanick <idr at freedesktop.org> writes:

> On 11/06/2014 06:16 PM, Michel Dänzer wrote:
>> On 06.11.2014 19:18, Joonas Lahtinen wrote:
>>> On to, 2014-11-06 at 18:12 +0900, Michel Dänzer wrote:
>>>> On 05.11.2014 20:14, Joonas Lahtinen wrote:
>>>>> Modified not refer to DRI3, just uses the present extension to get rid
>>>>> of the excess buffer invalidations.
>>>> AFAICT there's no fallback from your changes to the current behaviour if
>>>> the X server doesn't support the Present extension. There probably needs
>>>> to be such a fallback.
>>> It gets rid of such nasty hack (the intel_viewport one), that I thought
>>> there is no point making fallback. Because without this, the egl dri2
>>> backend is fundamentally broken anyway.
>> Well, AFAICT your code uses Present extension functionality
>> unconditionally, without checking that the X server supports Present. I
>> can't see how that could possibly work on an X server which doesn't
>> support Present, but I think it would be better to keep it working at
>> least as badly as it does now in that case. :)
> I was going to say pretty much the same thing.  Aren't there (non-Intel)
> drivers that don't do Present?  If I'm not mistaken, some parts of DRI3
> (not sure about Present) are even disabled in the Intel driver when SNA
> is in use... or at least that was the case at one point.

They actually get a fallback implementation if there's no driver
support, which would be sufficient for this code.

However, Present is too new for Mesa to be unconditionally relying on in
my opinion.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20141107/2a565869/attachment.sig>

More information about the mesa-dev mailing list