The poll(2) and select(2) manual pages say that the system calls perform poorly if there is overlapping monitoring. This note can be removed as the kqueue-based code does not suffer from select collisions.
OK? Index: lib/libc/sys/poll.2 =================================================================== RCS file: src/lib/libc/sys/poll.2,v retrieving revision 1.36 diff -u -p -r1.36 poll.2 --- lib/libc/sys/poll.2 18 Aug 2018 16:55:30 -0000 1.36 +++ lib/libc/sys/poll.2 13 Nov 2021 06:07:54 -0000 @@ -361,9 +361,3 @@ Similarly, the and .Dv POLLRDBAND flags are also equivalent. -.Pp -Internally to the kernel, -.Fn poll -and -.Fn ppoll -work poorly if multiple processes wait on the same file descriptor. Index: lib/libc/sys/select.2 =================================================================== RCS file: src/lib/libc/sys/select.2,v retrieving revision 1.43 diff -u -p -r1.43 select.2 --- lib/libc/sys/select.2 13 Aug 2020 01:00:03 -0000 1.43 +++ lib/libc/sys/select.2 13 Nov 2021 06:07:54 -0000 @@ -291,9 +291,3 @@ before and after the call to .Fn select , and using .Xr timersub 3 . -.Pp -Internally to the kernel, -.Fn select -and -.Fn pselect -work poorly if multiple processes wait on the same file descriptor.
