X-Git-Url: http://www.dolda2000.com/gitweb/?a=blobdiff_plain;f=lib%2Fmtio-epoll.c;h=85ee4a182f225a6db74d1e615fe2aa61d5204e5f;hb=47da1b3d5982ece5d8fd1f777b8471332f0d341a;hp=940ba3d49bdc94ec8fa9185a35cfc1f151fe26c3;hpb=330c9bc3a9008ac4937e79e80a0d383ce082f7c1;p=ashd.git diff --git a/lib/mtio-epoll.c b/lib/mtio-epoll.c index 940ba3d..85ee4a1 100644 --- a/lib/mtio-epoll.c +++ b/lib/mtio-epoll.c @@ -17,6 +17,9 @@ */ #include +#include +#include +#include #include #include #include @@ -163,6 +166,7 @@ void ioloop(void) time_t now, timeout; epfd = epoll_create(128); + fcntl(epfd, F_SETFD, FD_CLOEXEC); for(bl = blockers; bl; bl = nbl) { nbl = bl->n; if(regfd(bl)) @@ -184,7 +188,7 @@ void ioloop(void) nev = epoll_wait(epfd, evr, sizeof(evr) / sizeof(*evr), toval); if(nev < 0) { if(errno != EINTR) { - flog(LOG_CRIT, "ioloop: select errored out: %s", strerror(errno)); + flog(LOG_CRIT, "ioloop: epoll_wait errored out: %s", strerror(errno)); /* To avoid CPU hogging in case it's bad, which it * probably is. */ sleep(1);