When the call to queue a vblank event fails, we need to clean up by removing the user-space queue entry. That is indexed by the local sequence number, not by the kernel vblank count. The call in this case was just passing the wrong value.
Signed-off-by: Keith Packard <[email protected]> --- hw/xfree86/drivers/modesetting/vblank.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/xfree86/drivers/modesetting/vblank.c b/hw/xfree86/drivers/modesetting/vblank.c index fe046e48b..3f6568997 100644 --- a/hw/xfree86/drivers/modesetting/vblank.c +++ b/hw/xfree86/drivers/modesetting/vblank.c @@ -229,7 +229,7 @@ ms_queue_vblank(xf86CrtcPtr crtc, ms_queue_flag flags, return TRUE; } if (errno != EBUSY) { - ms_drm_abort_seq(scrn, msc); + ms_drm_abort_seq(scrn, seq); return FALSE; } ms_flush_drm_events(screen); -- 2.15.1 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel
