OpenBSD cvs log

created 2021-01-06T10:03:15Z
begin 2020-12-22T12:59:05Z
end 2020-12-22T13:24:45Z
path src/sys
commits 1

date 2020-12-22T13:24:45Z
author mpi
files src/sys/kern/sys_generic.c log diff annotate
message Implement select(2) and pselect(2) on top of kqueue.

The given set of fds are converted to equivalent kevents using EV_SET(2)
and passed to the scanning internals of kevent(2): kqueue_scan().

ktrace(1) will now output the converted kevents on top of the usuals set
bits to be able to find possible error in the convertion.

This switch implies that select(2) and pselect(2) will now query the
underlying kqfilters instead of the *_poll() routines.

Based on similar work done on DragonFlyBSD with inputs from from visa@,
millert@, anton@, cheloha@, thanks!

ok visa@