Re: [PATCH xserver 0/6] Use a thread for input
> From: Keith Packard> Date: Tue, 8 Dec 2015 15:44:48 -0800 > > Here's a series which revives Tiago's ancient threaded input > patch. This has been cleaned up to make sure that it does locking > correctly, and then patches for xf86 and kdrive/fbdev hook the code to > a couple of X servers to show how it should work. Most of my objections to this Tiago's patch still apply. Threads severely impact debuggability and this needs a full audit of all the drivers; not just the server. ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: [PATCH xserver 0/6] Use a thread for input
Mark Ketteniswrites: > Most of my objections to this Tiago's patch still apply. Threads > severely impact debuggability and this needs a full audit of all the > drivers; not just the server. I added the change which makes -dumbSched disable input threading to ease debugging, although I haven't had any issues debugging multithreaded code in a long time. As for the driver audit, the only ones which need review are the few active input drivers which weren't allowing SIGIO-based event processing (libinput and keyboard). Not much to audit in either of those, fortunately. Given that evdev already allowed SIGIO handling for all devices, I think we've got good coverage for the X server itself. Output drivers haven't always had to support sprite position changes at SIGIO time, so they're all ready for this change. The reason for this change is that libinput isn't willing to tolerate reading events at SIGIO time as that means not being able to use most of libc. In the process of doing this work, I uncovered numerous existing places which were calling inappropriate libc functions from the SIGIO context; this change will fix those as well as allowing us to eliminate kludges working around this limitation. -- -keith signature.asc Description: PGP signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: [PATCH xserver 0/6] Use a thread for input
Keith Packardwrites: > Here's a series which revives Tiago's ancient threaded input > patch. I've spent some time debugging and cleaning this up further; I found a couple of deadlocks, and then I also fixed mieqEnqueue to resize the input event queue when it gets full, rather than dropping events on the floor. I also split out the removal of the SIGIO code from xf86 so that DRI1 can continue to 'work' if we like; simply not pulling the two patches involved will leave it all in place while still eliminating the use of SIGIO for input handling. I've pushed this to git://people.freedesktop.org/~keithp/xserver.git input-thread I've also rebased my remaining eliminate_fd_set patches on top of this series: git://people.freedesktop.org/~keithp/xserver.git eliminate_fd_set This series now eliminates AddEnabledDevice and AddGeneralSocket from the OS API so that we'll catch drivers using these in ways that won't work anymore. I still need to do a libXfont release at some point. I can send patches to the list if people like. -- -keith signature.asc Description: PGP signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel