Because read/write filters now use a separate struct to track FDs inserted into epoll, and we get aggregate read/write notifications from epoll, if there's only one ev output slot, and the FD is readable and writable, we'd lose the write event.
We need to add knotes into a doubly linked list, and return those before calling the kqops.wait function for a given platform. This should be done in common code with the knote API being extended.
Because read/write filters now use a separate struct to track FDs inserted into epoll, and we get aggregate read/write notifications from epoll, if there's only one ev output slot, and the FD is readable and writable, we'd lose the write event.
We need to add knotes into a doubly linked list, and return those before calling the kqops.wait function for a given platform. This should be done in common code with the knote API being extended.