[PATCH xf86-video-ati 7/7] Keep waiting for a pending flip if drm_handle_event returns 0

Michel Dänzer michel at daenzer.net
Mon Jan 28 17:34:20 UTC 2019


From: Michel Dänzer <michel.daenzer at amd.com>

drm_wait_pending_flip stopped waiting if drm_handle_event returned 0,
but that might have processed only some unrelated DRM events. As long as
the flip is pending, we have to keep waiting for its completion event.

Noticed while working on the previous fix.

(Ported from amdgpu commit 9045fb310f88780e250e60b80431ca153330e61b)

Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
---
 src/radeon_drm_queue.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/radeon_drm_queue.c b/src/radeon_drm_queue.c
index 2e2b84040..fc0436058 100644
--- a/src/radeon_drm_queue.c
+++ b/src/radeon_drm_queue.c
@@ -325,7 +325,7 @@ void radeon_drm_wait_pending_flip(xf86CrtcPtr crtc)
 
     while (drmmode_crtc->flip_pending
 	   && radeon_drm_handle_event(pRADEONEnt->fd,
-					  &drmmode_crtc->drmmode->event_context) > 0);
+				      &drmmode_crtc->drmmode->event_context) >= 0);
 }
 
 /*
-- 
2.20.1



More information about the amd-gfx mailing list