diff options
author | Keith Packard <keithp@keithp.com> | 2015-12-08 14:39:46 -0800 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2016-05-26 16:07:54 -0700 |
commit | 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 (patch) | |
tree | 1643ea974c60cefb7dbd6d646e40d77263babaa3 /mi | |
parent | 8cf832c288dec13cbf3c25478a8ccef52d61f3db (diff) |
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>
Diffstat (limited to 'mi')
-rw-r--r-- | mi/mieq.c | 6 | ||||
-rw-r--r-- | mi/mipointer.c | 4 |
2 files changed, 5 insertions, 5 deletions
@@ -145,10 +145,10 @@ mieqGrowQueue(EventQueuePtr eventQueue, size_t new_nevents) n_enqueued = mieqNumEnqueued(eventQueue); - /* We block signals, so an mieqEnqueue triggered by SIGIO does not + /* We lock input, so an mieqEnqueue does not * write to our queue as we are modifying it. */ - OsBlockSignals(); + input_lock(); /* First copy the existing events */ first_hunk = eventQueue->nevents - eventQueue->head; @@ -181,7 +181,7 @@ mieqGrowQueue(EventQueuePtr eventQueue, size_t new_nevents) free(eventQueue->events); eventQueue->events = new_events; - OsReleaseSignals(); + input_unlock(); return TRUE; } diff --git a/mi/mipointer.c b/mi/mipointer.c index caa7a9f93..3f6252d2f 100644 --- a/mi/mipointer.c +++ b/mi/mipointer.c @@ -750,7 +750,7 @@ miPointerMove(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y) POINTER_SCREEN | POINTER_ABSOLUTE | POINTER_NORAW, &mask); - OsBlockSignals(); + input_lock(); #ifdef XQUARTZ darwinEvents_lock(); #endif @@ -759,5 +759,5 @@ miPointerMove(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y) #ifdef XQUARTZ darwinEvents_unlock(); #endif - OsReleaseSignals(); + input_unlock(); } |