xf86-video-amdgpu: Branch 'master'

Michel Dänzer daenzer at kemper.freedesktop.org
Wed Apr 25 17:05:41 UTC 2018


 src/drmmode_display.c |    2 ++
 1 file changed, 2 insertions(+)

New commits:
commit 7db0c8e9d7586cff4312d4b93684d35de3e6376f
Author: Michel Dänzer <michel.daenzer at amd.com>
Date:   Tue Apr 24 11:56:03 2018 +0200

    Set drmmode_crtc->scanout_id = 0 when TearFree is disabled
    
    When disabling TearFree, drmmode_crtc->scanout_id could remain as 1,
    but drmmode_set_mode_major would destroy drmmode_crtc->scanout[1], so
    scanout_do_update() would keep bailing, and the scanout buffer would
    stop being updated.
    
    Fixes freeze after disabling TearFree on a CRTC with active RandR
    rotation or other transform.
    
    Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 536890d..793027d 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -846,6 +846,8 @@ drmmode_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode,
 		drmmode_crtc_update_tear_free(crtc);
 		if (drmmode_crtc->tear_free)
 			scanout_id = drmmode_crtc->scanout_id;
+		else
+			drmmode_crtc->scanout_id = 0;
 
 		/* gamma is disabled in kernel driver for deep color */
 		if (pScrn->depth != 30)


More information about the xorg-commit mailing list