summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Berg <benjamin.berg@intel.com>2024-09-19 14:45:04 +0200
committerJohannes Berg <johannes.berg@intel.com>2024-10-10 13:37:21 +0200
commit801e00d3a1b78b7f71675fae79946ff4aa3ee070 (patch)
tree20db4c401de61944da93f95b9b899ed4d764bdb6
parentum: use execveat to create userspace MMs (diff)
downloadlinux-801e00d3a1b78b7f71675fae79946ff4aa3ee070.tar.xz
linux-801e00d3a1b78b7f71675fae79946ff4aa3ee070.zip
um: Set parent death signal for userspace process
Enable PR_SET_PDEATHSIG so that the UML userspace process will be killed when the kernel exits unexpectedly. Signed-off-by: Benjamin Berg <benjamin.berg@intel.com> Link: https://patch.msgid.link/20240919124511.282088-4-benjamin@sipsolutions.net Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--arch/um/kernel/skas/stub_exe.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/um/kernel/skas/stub_exe.c b/arch/um/kernel/skas/stub_exe.c
index bc6ba2e4d805..04f75c577f1a 100644
--- a/arch/um/kernel/skas/stub_exe.c
+++ b/arch/um/kernel/skas/stub_exe.c
@@ -32,6 +32,9 @@ noinline static void real_init(void)
/* set a nice name */
stub_syscall2(__NR_prctl, PR_SET_NAME, (unsigned long)"uml-userspace");
+ /* Make sure this process dies if the kernel dies */
+ stub_syscall2(__NR_prctl, PR_SET_PDEATHSIG, SIGKILL);
+
/* read information from STDIN and close it */
res = stub_syscall3(__NR_read, 0,
(unsigned long)&init_data, sizeof(init_data));