From 4f948b4340898d49fbf86fda509458d55f5720e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9=20=D0=A8=D0=B8?= =?UTF-8?q?=D0=BB=D0=B8=D0=BD?= Date: Thu, 16 Nov 2017 19:48:30 +0300 Subject: [PATCH xserver] xfree86/common: Fix VT leave lockup #103782 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When xf86VTSwitchAway() returns true to xf86VTLeave(), the input mutex does not get unlocked. As the result, any other thread which later tries to execute input_lock() freezes forever, which in turn may lead to X server lockup. This commit adds the missing input_unlock() call. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=103782 Signed-off-by: Алексей Шилин --- hw/xfree86/common/xf86Events.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/xfree86/common/xf86Events.c b/hw/xfree86/common/xf86Events.c index 53ec74f26..f6e5a5342 100644 --- a/hw/xfree86/common/xf86Events.c +++ b/hw/xfree86/common/xf86Events.c @@ -452,6 +452,8 @@ xf86VTLeave(void) xf86UpdateHasVTProperty(FALSE); + input_unlock(); + return; switch_failed: -- 2.11.0