On Sun, May 29, 2016 at 07:17:53PM -0700, Keith Packard wrote: > Threaded input doesn't use SIGIO anymore, but existing drivers using > xf86BlockSIGIO and xf86ReleaseSIGIO probably want to lock the input > mutex during those operations. Provide inline functions to do this > which are marked as 'deprecated' so that drivers will get warnings > until they are changed. > > Signed-off-by: Keith Packard <[email protected]>
Reviewed-by: Peter Hutterer <[email protected]> thanks Cheers, Peter > --- > hw/xfree86/common/xf86.h | 4 ++++ > hw/xfree86/os-support/shared/sigio.c | 10 +++++----- > 2 files changed, 9 insertions(+), 5 deletions(-) > > diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h > index adb5601..e54c811 100644 > --- a/hw/xfree86/common/xf86.h > +++ b/hw/xfree86/common/xf86.h > @@ -93,6 +93,10 @@ extern _X_EXPORT Bool VTSwitchEnabled; /* kbd driver */ > #define PIX24TOBPP(p) (((p) == Pix24Use24) ? 24 : \ > (((p) == Pix24Use32) ? 32 : 0)) > > +/* Compatibility functions for pre-input-thread drivers */ > +static inline _X_DEPRECATED int xf86BlockSIGIO(void) { input_lock(); return > 0; } > +static inline _X_DEPRECATED void xf86UnblockSIGIO(int wasset) { > input_unlock(); } > + > /* Function Prototypes */ > #ifndef _NO_XF86_PROTOTYPES > > diff --git a/hw/xfree86/os-support/shared/sigio.c > b/hw/xfree86/os-support/shared/sigio.c > index 37d35f7..37ef38f 100644 > --- a/hw/xfree86/os-support/shared/sigio.c > +++ b/hw/xfree86/os-support/shared/sigio.c > @@ -131,7 +131,7 @@ xf86IsPipe(int fd) > } > > static void > -xf86BlockSIGIO(void) > +block_sigio(void) > { > sigset_t set; > > @@ -141,7 +141,7 @@ xf86BlockSIGIO(void) > } > > static void > -xf86ReleaseSIGIO(void) > +release_sigio(void) > { > sigset_t set; > > @@ -165,7 +165,7 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), > void *closure) > if (!xf86SigIOFuncs[i].f) { > if (xf86IsPipe(fd)) > return 0; > - xf86BlockSIGIO(); > + block_sigio(); > #ifdef O_ASYNC > if (fcntl(fd, F_SETFL, fcntl(fd, F_GETFL) | O_ASYNC) == -1) { > xf86Msg(X_WARNING, "fcntl(%d, O_ASYNC): %s\n", > @@ -193,7 +193,7 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), > void *closure) > } > #endif > if (!installed) { > - xf86ReleaseSIGIO(); > + release_sigio(); > return 0; > } > sigemptyset(&sa.sa_mask); > @@ -209,7 +209,7 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), > void *closure) > if (fd >= xf86SigIOMaxFd) > xf86SigIOMaxFd = fd + 1; > FD_SET(fd, &xf86SigIOMask); > - xf86ReleaseSIGIO(); > + release_sigio(); > return 1; > } > /* Allow overwriting of the closure and callback */ > -- > 2.8.1 > > _______________________________________________ > [email protected]: X.Org development > Archives: http://lists.x.org/archives/xorg-devel > Info: https://lists.x.org/mailman/listinfo/xorg-devel > _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel
