On 27.05.2015 07:12, Keith Packard wrote:
> Michel Dänzer <[email protected]> writes:
> 
>> Keith, this is also an important fix:
>>
>> On 06.02.2015 17:25, Chris Wilson wrote:
>>> As we unflip after the flip Window no longer passes the pixel ownership
>>> test for the full Screen Pixmap, we can no longer utilize that Window to
>>> copy the contents back to the backing pixmap. To first flip means that
>>> the Window was originally backed by the Screen Pixmap and wholly covered
>>> the Pixmap, thus we need to copy the last frame contents to the Screen
>>> Pixmap when the flip chain is complete.
>>>
>>> Signed-off-by: Chris Wilson <[email protected]>
>>
>> Without this fix, one can momentarily see stale screen contents when
>> unflipping, e.g. when quitting a fullscreen app or switching from
>> fullscreen to windowed mode.
> 
> This patch does look correct - the original code was trying to copy
> the old window contents into the new window clip list before the
> related window configuration operation was completed. Copying the bits
> to the screen pixmap neatly routes around that ordering problem.
> 
> A more efficient fix would involve only copying regions that aren't
> getting explicitly painted by various expose processing; but so few
> windows use non-None backgrounds that it probably won't make any actual
> difference in practice.

Also, while that might be slightly more efficient, it might again make
stale contents momentarily visible on unflip?


Anyway, thanks for pushing this fix, but I hope you realize that the
hangs fixed by the other patch we're discussing are far more severe.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to