> @@ -938,6 +1027,8 @@ static int handle_requests(int epollfd, struct epoll_event *events, int nr_fds) > if (ret < 0) > goto out; > if (ret > 0) { > + if (complete_forks(epollfd, &events, &nr_fds)) > + return -1; Same question for forks -- why two parts? > if (complete_exits(epollfd)) > return -1; > continue; >