[Mesa-dev] [PATCH 0/7] egl, i965: Implement EGL_KHR_mutable_render_buffer

Emil Velikov emil.l.velikov at gmail.com
Wed Sep 5 15:20:51 UTC 2018


Hi gents,

On 31 July 2018 at 11:23, Tapani Pälli <tapani.palli at intel.com> wrote:
> Hi;
>
> Maybe something went wrong since patches 4,6 are missing from this series?
>
> Functionally at least propagating mutableRenderBuffer boolean from driver to
> driCreateConfigs is missing.
>
> // Tapani
>
> On 07/31/2018 08:00 AM, Chad Versace wrote:
>>
>> Despite the KHR, Android is the only OS that uses this extension, as far
>> as I know. Essentially, it allows the app to toggle
>> front-buffer/back-buffer rendering using EGL.
>>
>> Android requires this extension if the device advertises support for
>> virtual reality. No Chrome OS device yet supports Android's VR software
>> requirements, though, and VR is not why I implemented this.
>>
>> This extension enables handwriting and drawing apps on Chrome and
>> Android devices to achieve very low latency between touch input
>> and display response.
>>
>> Please don't bash me for this oddly-specified Android extension.
>> I didn't create it. I'm just writing the code that Android requires.
>>
>> * Patch 3 defines a pair of new DRI extensions,
>> DRI_MutableRenderBuffer{Driver,Loader}.
>> * Patches 1-5 add the generic code for the DRI and EGL extensions.
>> * Patch 6 implements DRI_MutableRenderBufferLoader for Android EGL.
>> * Patch 7 implements DRI_MutableRenderBufferDriver for i965.
>>
>> This series is tagged at:
>>
>> http://git.kiwitree.net/cgit/~chadv/mesa/log/?h=refs/tags/chadv/review/i965-mutable-render-buffer-v01
>>
>> Chad Versace (7):
>>    egl: Simplify queries for EGL_RENDER_BUFFER
>>    egl/dri2: In dri2_make_current, return early on failure
>>    dri: Define DRI_MutableRenderBuffer extensions

I was skimming recently and noticed that while a new mask is
introduced __DRI_IMAGE_BUFFER_SHARED there is no corresponding entry
in struct __DRIimageList.

The comment says "... shared buffer is similar to a front buffer ..."
as well as "If buffer_mask contains __DRI_IMAGE_BUFFER_SHARED, then
must contains no other bits".
Yet we use the __DRIimageList::back. Wouldn't a
__DRIimageList::buffer_shared be more obvious solution?

Thanks
Emil


More information about the mesa-dev mailing list