unsigned int
ev_embeddable_backends (void)
{
- return EVBACKEND_EPOLL
- | EVBACKEND_KQUEUE
+ /* epoll embeddability broken on all linux versions up to at least 2.6.23 */
+ return EVBACKEND_KQUEUE
| EVBACKEND_PORT;
}
{
struct ev_loop *loop = w->other;
assert (("loop to be embedded is not embeddable", backend & ev_embeddable_backends ()));
- ev_io_init (&w->io, embed_io_cb, backend_fd, EV_WRITE);
+ ev_io_init (&w->io, embed_io_cb, backend_fd, EV_READ);
}
ev_set_priority (&w->io, ev_priority (w));