From: Nick Mathewson Date: Thu, 8 Jul 2010 18:41:02 +0000 (-0400) Subject: Suppress a spurious EPERM warning in epoll.c X-Git-Tag: release-2.0.6-rc~30 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e73cbde15f7fe71649c2d9783a03a805edc10027;p=libevent Suppress a spurious EPERM warning in epoll.c It's okay for us to get an EPERM when doing an EPOLL_DEL on an fd; it just means that before we got a chance to the EPOLL_DEL, we closed the fd and reopened a new non-socket that wound up having the same fd. Partial fix for Bug 3019973. --- diff --git a/epoll.c b/epoll.c index 6c3cf33f..6707ae8a 100644 --- a/epoll.c +++ b/epoll.c @@ -235,7 +235,8 @@ epoll_apply_changes(struct event_base *base) */ event_debug((" ADD was redundant")); } else if (op == EPOLL_CTL_DEL && - (errno == ENOENT || errno == EBADF)) { + (errno == ENOENT || errno == EBADF || + errno == EPERM)) { /* If a delete fails with one of these errors, * that's fine too: we closed the fd before we * got around to calling epoll_dispatch. */