From: Enrico Scholz Date: Sat, 2 Mar 2013 16:31:53 +0000 (+0100) Subject: manager: remove timer fd explicitly from epoll X-Git-Tag: v198~57 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f1324eaa6868f196cccfec839e126ea0046cb6b6;p=thirdparty%2Fsystemd.git manager: remove timer fd explicitly from epoll Forked processes can keep the old fd alive triggering epoll over and over again else. https://bugs.freedesktop.org/show_bug.cgi?id=61697 --- diff --git a/src/core/manager.c b/src/core/manager.c index 1d188081a1d..c261b25fb65 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -1674,6 +1674,8 @@ static int process_event(Manager *m, struct epoll_event *ev) { NULL); /* Restart the watch */ + epoll_ctl(m->epoll_fd, EPOLL_CTL_DEL, m->time_change_watch.fd, + NULL); close_nointr_nofail(m->time_change_watch.fd); watch_init(&m->time_change_watch); manager_setup_time_change(m);