[PATCH 1/5] xfree86: always enable SIGIO on OsVendorInit (#50957)

Peter Hutterer peter.hutterer at who-t.net
Mon Jul 2 23:01:14 PDT 2012


Drivers call xf86InstallSIGIOHandler() for their fd on DEVICE_ON. That
function does not actually enable the signal if it was blocked to begin
with. As a result, if one vt-switches away from the server (SIGIO is
blocked) and then triggers a server regeneration, the signal remains
blocked and input devices are dead.

Avoid this by always unblocking SIGIO when we start the server.

X.Org Bug 50957 <http://bugs.freedesktop.org/show_bug.cgi?id=50957>

Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
---
 hw/xfree86/common/xf86Init.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index ca6efd4..526b95d 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -964,6 +964,7 @@ OsVendorInit(void)
     }
 #endif
 #endif
+    xf86UnblockSIGIO(0);
 
     beenHere = TRUE;
 }
-- 
1.7.10.4



More information about the xorg-devel mailing list