The return of kevent?
Posted May 17, 2007 7:40 UTC (Thu) by slamb
In reply to: The return of kevent?
Parent article: The return of kevent?
The first complaint is not that significative, IMHO.
You're too kind. The first complaint is a total load of shit, and we're all stupider for
having entertained the idea. Under load, the syscall overhead of one epoll_wait() is insignificant
compared to the syscall overhead of the many, many reads and writes associated with it, not to
mention the actual costs of copying or checksumming buffers if you're not just doing zerocopy. I
am unable to imagine how anyone could think otherwise, though I've seen this argument (and
the resultant code) come up several times in this discussion.
The third complaint is also wrong, but not obviously/offensively so. It's
solvable through something like my own sigsafe library (see the table in the main
page of the API documentation). They might have to make changes to the syscall page
mechanism for this approach work as well as old-fashioned int 0x80, but that's
doable (preserving compatibility and all).
On the other hand, Ulrich's second and fourth complaints have some merit, IMHO. The
second in particular has long made me prefer the BSD-style kevent to epoll.
to post comments)