aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikolay Denev <ndenev@gmail.com>2026-04-20 17:18:50 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2026-04-20 17:18:50 +0000
commite56687bb2d32ee4b1774300f3960427ca56b34bb (patch)
tree7680be9d7826d3eaa0b6294ee53b0d5a11e673bd
parent505f381cb96ee25bcf0df11cfaf15a601d969500 (diff)
ctld: Return from the inner "main" loop on EINTR
This ensures that child processes are reaped in the outer loop in main(). PR: 294035 Reviewed by: asomers Fixes: 66b107e82b2f ("ctld: Use kevent(2) for socket events rather than select(2)") Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D56525
-rw-r--r--usr.sbin/ctld/ctld.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/usr.sbin/ctld/ctld.cc b/usr.sbin/ctld/ctld.cc
index 331c029e282e..a6c80a3604c3 100644
--- a/usr.sbin/ctld/ctld.cc
+++ b/usr.sbin/ctld/ctld.cc
@@ -2418,7 +2418,7 @@ main_loop(bool dont_fork)
error = kevent(kqfd, NULL, 0, &kev, 1, NULL);
if (error == -1) {
if (errno == EINTR)
- continue;
+ return;
log_err(1, "kevent");
}