diff --git a/fs/eventpoll.c b/fs/eventpoll.c index 0a67e39943c3..d81115ccb508 100644 --- a/fs/eventpoll.c +++ b/fs/eventpoll.c @@ -1928,6 +1928,7 @@ SYSCALL_DEFINE4(epoll_ctl, int, epfd, int, op, int, fd, mutex_lock_nested(&ep->mtx, 0); if (op == EPOLL_CTL_ADD) { if (!list_empty(&f.file->f_ep_links) || + ep->gen == loop_check_gen || is_file_epoll(tf.file)) { full_check = 1; mutex_unlock(&ep->mtx);