[RFC][PATCH xserver] xwayland: Queue Present events

Michel Dänzer michel at daenzer.net
Thu Feb 1 15:49:11 UTC 2018


On 2018-02-01 04:45 PM, Michel Dänzer wrote:
> On 2018-01-29 06:15 PM, Roman Gilg wrote:
>> This is a RFC on a follow-up patch to my recently posted patch series on the
>> xorg-devel mailing list to enable per window flips of Present Pixmaps to
>> Wayland surfaces:
>> https://lists.freedesktop.org/archives/xorg-devel/2018-January/055674.html
>>
>> With the attached patch queuing events should be possible. This works with the
>> changed timer interval reasonable well, but I don't fully understand the logic
>> of queuing, that's why I decided on excluding the patch from the above patch
>> series.
>>
>> The problem with the old timer interval was, that this was too slow. For
>> example VLC would send new Pixmaps too slow and the video would stutter. So
>> changing it to a larger value makes sense.
>>
>> But the question is if this needs to take into account the refresh rate of the
>> display as well. I would then go over to analyzing the current position of the
>> window and the refresh rate of the xwl_output the window covers the most (this
>> is similar to how the xfree86 modesetting driver does it).
> 
> Yes, something like that is necessary.
> 
> As it is, it looks like the patch will always use the same timer
> interval, regardless of the target MSC value. This won't work as
> expected in general, though it might happen to work for simple clients
> (which is probably the majority), which always just want to synchronize
> to the next MSC.

Note that even with such simple clients, if the timer interval doesn't
align with the refresh rate, there might be judder artifacts due to not
consistently hitting every refresh cycle.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the xorg-devel mailing list