From 656be28321e2262dd645128e22ec7625f27a6f9d Mon Sep 17 00:00:00 2001 From: Tiwei Bie Date: Tue, 6 Jan 2026 08:12:28 +0800 Subject: [PATCH] um: Handle SIGCHLD in seccomp mode like other IRQ signals In seccomp mode, SIGCHLD serves as the child reaper IRQ. So, let's handle it in the same way as other IRQ signals, including preventing them from nesting with each other and allowing interrupted syscalls to be automatically restarted. Signed-off-by: Tiwei Bie Link: https://patch.msgid.link/20260106001228.1531146-3-tiwei.btw@antgroup.com Signed-off-by: Johannes Berg --- arch/um/os-Linux/signal.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/um/os-Linux/signal.c b/arch/um/os-Linux/signal.c index de372b936a804..6c993bc8c78eb 100644 --- a/arch/um/os-Linux/signal.c +++ b/arch/um/os-Linux/signal.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -224,6 +225,8 @@ void set_handler(int sig) sigaddset(&action.sa_mask, SIGIO); sigaddset(&action.sa_mask, SIGWINCH); sigaddset(&action.sa_mask, SIGALRM); + if (using_seccomp) + sigaddset(&action.sa_mask, SIGCHLD); if (sig == SIGSEGV) flags |= SA_NODEFER; -- 2.47.3