[PATCH xserver 00/25] Eliminiate fd_set and switch to poll(2)

Keith Packard keithp at keithp.com
Wed May 25 05:38:37 UTC 2016

I've finished the migration from select(2) to poll(2) to get rid of
any fd value dependencies in the server.

This is all sitting in my 'eliminate_fd_set' branch and is built on
top of my 'input-thread' branch, which is nearly ready to merge.

Get rid of fd_set from block and wakeup handler interfaces, eliminate
all OS FD interfaces except for NotifyFd:

	[PATCH xserver 01/25] hw/xfree86: Use NotifyFd for other input fd
	[PATCH xserver 02/25] dix: Switch to the libXfont2 API (v2)
	[PATCH xserver 03/25] hw/kdrive: Use passed-in fd for kdrive/linux
	[PATCH xserver 04/25] modesetting: Use passed-in fd for drm event
	[PATCH xserver 05/25] Remove readmask from screen block/wakeup
	[PATCH xserver 06/25] Remove fd_set from Block/Wakeup handler API
	[PATCH xserver 07/25] dix: Call screen block/wakeup handlers closest
	[PATCH xserver 08/25] kdrive/ephyr: Poll for events in block handler
	[PATCH xserver 09/25] dmx: Eliminate use of AddEnabledDevice
	[PATCH xserver 10/25] xnest: Use SetNotifyFd to receive events
	[PATCH xserver 11/25] Remove AddEnabledDevice and AddGeneralSocket
	[PATCH xserver 12/25] dix: Use list for ready clients
	[PATCH xserver 13/25] dix/os: Merge priority computation into
	[PATCH xserver 14/25] dix: Intermediate GrabServer state
	[PATCH xserver 15/25] Modify ready_client list directly from
	[PATCH xserver 16/25] ephyr: Use screen block handler for flushing

Switch the OS layer to poll(2), eliminate other fd_set uses:

	[PATCH xserver 17/25] os: use poll(2) instead of select(2)
	[PATCH xserver 18/25] os: Eliminate code managing fd_set masks for
	[PATCH xserver 19/25] os: Use poll(2) instead of select(2) in
	[PATCH xserver 20/25] os: Generalize poll fd management code
	[PATCH xserver 21/25] os: Use poll(2) for input thread

Get rid of select(2) from the reset of the server:

	[PATCH xserver 22/25] kdrive: switch from select(2) to poll(2)
	[PATCH xserver 23/25] xfree86: Switch from select(2) to poll(2)
	[PATCH xserver 24/25] dmx: Switch from select(2) to poll(2) for input

Finally, eliminate fd range checking:

	[PATCH xserver 25/25] os: eliminate fd value limits for clients


More information about the xorg-devel mailing list