Remove SIGIO support for input [v5]

This removes all of the SIGIO handling support used for input
throughout the X server, preparing the way for using threads for input
handling instead.

Places calling OsBlockSIGIO and OsReleaseSIGIO are marked with calls
to stub functions input_lock/input_unlock so that we don't lose this
information.

xfree86 SIGIO support is reworked to use internal versions of
OsBlockSIGIO and OsReleaseSIGIO.

v2: Don't change locking order (Peter Hutterer)
v3: Comment weird && FALSE in xf86Helper.c
    Leave errno save/restore in xf86ReadInput
    Squash with stub adding patch (Peter Hutterer)
v4: Leave UseSIGIO config parameter so that
    existing config files don't break (Peter Hutterer)
v5: Split a couple of independent patch bits out
    of kinput.c (Peter Hutterer)

Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Keith Packard 2015-12-08 14:39:46 -08:00
commit 6a5a4e6037
28 changed files with 115 additions and 456 deletions

View file

@ -86,10 +86,10 @@ remove_device(const char *backend, DeviceIntPtr dev)
/* Call PIE here so we don't try to dereference a device that's
* already been removed. */
OsBlockSignals();
input_lock();
ProcessInputEvents();
DeleteInputDeviceRequest(dev);
OsReleaseSignals();
input_unlock();
}
void