[Mesa-dev] [PATCH 4/4] radeonsi: force non-displayable tiling based on surface dimensions

Marek Olšák maraeo at gmail.com
Mon Jun 6 10:24:51 UTC 2016


On Mon, Jun 6, 2016 at 11:47 AM, Michel Dänzer <michel at daenzer.net> wrote:
> On 06.06.2016 18:44, Axel Davy wrote:
>> On 06/06/2016 11:37, Michel Dänzer wrote :
>>> With DRI3, st/dri could (re-)allocate buffers with the scanout flag
>>> first and after any window geometry changes, then re-allocate without
>>> the flag if the present complete event indicates that page flipping
>>> couldn't be used.
>>
>> That sounds like a bad idea,
>> if someone is playing game fullscreen, then alt tab to check something,
>> and goes back, then st/dri would
>> have decided to use non-scanout images (since no flips were used when
>> alt-tab was used).
>
> That's why I wrote that st/dri3 should re-allocate the buffers with the
> scanout flag after any window geometry changes, such as when putting the
> game window back to fullscreen.

It looks like I can do the reallocation on
XCB_PRESENT_COMPLETE_MODE_{FLIP,COPY) changes, but that comes from
XCB_PRESENT_COMPLETE_NOTIFY, which seems too late.

There is also XCB_PRESENT_CONFIGURE_NOTIFY, but it's not clear to me
how to get the scanout/non-scanout flag from that.

Marek


More information about the mesa-dev mailing list