I concur with all of your points.
Also, in order to do edge-triggered event notification [...] the kernel can't just "forget about it"
It can forget about the events; naturally, events have side effects, and the kernel will have to keep track of the state of its objects. (Or am I missing something?)
If a file descriptor has an event, but is closed before the event is processed, and another connection is accepted
Both APIs have an "opaque pointer" field in their event structures. Applications are supposed to use this for identifying clients, not file descriptor numbers.
Copyright © 2018, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds