Bug 94325

Summary: dri3 flipping between fullscreen and windowed video using opengl output fails to clear fullscreen.
Product: xorg Reporter: Andy Furniss <adf.lists>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Andy Furniss 2016-02-28 12:15:35 UTC
Using R9285 xserver 1.18.1 git mesa/llvm, kernel adg5f drm-fixes-4.5, wm is fluxbox so no compositing.

When DRI3 is enabled playing a windowed video with either

mplayer -vo gl 

mpv --vo=opengl 

and repeatedly pressing f to toggle between fullscreen and windowed may result in my background becoming a still image of the fullscreen video image.

Only areas that are updated get cleaned eg. the console output and the windowed video.

Changing desktops does not clear.

vdpau and vaapi vo don't have the issue and can be used to "clean" my desktop.
Comment 1 Andy Furniss 2016-02-28 12:20:38 UTC
This does not happen with vblank_mode=0
Comment 2 Andy Furniss 2016-02-28 12:46:11 UTC
It does happen running kernel 4.3.6
Comment 3 Michel Dänzer 2016-02-29 01:31:52 UTC
This is an xserver bug fixed by https://patchwork.freedesktop.org/patch/74387/ (you may need patches 2 & 3 of that series as well).
Comment 4 Andy Furniss 2016-03-01 17:25:21 UTC
(In reply to Michel Dänzer from comment #3)
> This is an xserver bug fixed by
> https://patchwork.freedesktop.org/patch/74387/ (you may need patches 2 & 3
> of that series as well).

Yes, these fix it.
Comment 5 Michel Dänzer 2016-03-05 03:37:28 UTC
commit 72328e5eb98a3f27e1f0a0e17beae6db447bd87c
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Thu Feb 18 18:23:47 2016 +0900

    present: Only update screen pixmap from flip pixmap once per unflip
Comment 6 Andy Furniss 2016-03-05 10:05:49 UTC
I tested the three patches on server-1.18-branch

I assume they'll end up in there as well?

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.