[prev in list] [next in list] [prev in thread] [next in thread]
List: openbsd-cvs
Subject: CVS: cvs.openbsd.org: src
From: Martin Pieuchot <mpi () cvs ! openbsd ! org>
Date: 2021-10-24 11:23:22
Message-ID: 94b28d4f28a84ae3 () cvs ! openbsd ! org
[Download RAW message or body]
CVSROOT: /cvs
Module name: src
Changes by: mpi@cvs.openbsd.org 2021/10/24 05:23:22
Modified files:
sys/kern : sys_generic.c
sys/miscfs/fifofs: fifo_vnops.c
Log message:
Implement poll(2), select(2), ppoll(2) & 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 poll(2) and select(2) will now query underlying
kqfilters instead of the *_poll() routines. An increase in latency is
visible, especially with UDP sockets and NET_LOCK()-contended subsystems
and will be addressed in next steps.
Based on similar work done on MacOS and DragonFlyBSD with inputs from
visa@, millert@, anton@, cheloha@, thanks!
Tested by many, thanks!
ok claudio@, bluhm@
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic