summaryrefslogtreecommitdiff
path: root/src/radeon_dri2.c
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2018-12-20 18:48:19 +0100
committerMichel Dänzer <michel@daenzer.net>2018-12-28 12:04:35 +0100
commitf450632077843a95a6ef269febbfb64a605045ed (patch)
treefe1e08d7ecd8a0f35b2fb347233ab604ae4f47ec /src/radeon_dri2.c
parent189b6facb3988c00c96d970f8c13ed8d58fa3998 (diff)
Explicitly keep track of whether a DRM event is for a flip or not
When an async flip is performed, and TearFree is enabled on the CRTC used for timing, we schedule a vblank event for completing the page flip. The DRM event queuing code treated this event like a vblank event, but it needs to be treated like a page flip event. (Ported from amdgpu commit e2c7369cae65069aa93eed1c0b678f975ce5c274)
Diffstat (limited to 'src/radeon_dri2.c')
-rw-r--r--src/radeon_dri2.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
index 4d12fc09..922ed4fb 100644
--- a/src/radeon_dri2.c
+++ b/src/radeon_dri2.c
@@ -1076,7 +1076,7 @@ static int radeon_dri2_schedule_wait_msc(ClientPtr client, DrawablePtr draw,
drm_queue_seq = radeon_drm_queue_alloc(crtc, client, RADEON_DRM_QUEUE_ID_DEFAULT,
wait_info, radeon_dri2_frame_event_handler,
- radeon_dri2_frame_event_abort);
+ radeon_dri2_frame_event_abort, FALSE);
if (drm_queue_seq == RADEON_DRM_QUEUE_ERROR) {
xf86DrvMsg(scrn->scrnIndex, X_WARNING,
"Allocating DRM queue event entry failed.\n");
@@ -1215,7 +1215,7 @@ static int radeon_dri2_schedule_swap(ClientPtr client, DrawablePtr draw,
drm_queue_seq = radeon_drm_queue_alloc(crtc, client, RADEON_DRM_QUEUE_ID_DEFAULT,
swap_info, radeon_dri2_frame_event_handler,
- radeon_dri2_frame_event_abort);
+ radeon_dri2_frame_event_abort, FALSE);
if (drm_queue_seq == RADEON_DRM_QUEUE_ERROR) {
xf86DrvMsg(scrn->scrnIndex, X_WARNING,
"Allocating DRM queue entry failed.\n");