summaryrefslogtreecommitdiffhomepage
path: root/test/syscalls/linux/prctl.cc
diff options
context:
space:
mode:
authorNicolas Lacasse <nlacasse@google.com>2021-08-04 18:09:35 -0700
committergVisor bot <gvisor-bot@google.com>2021-08-04 18:12:37 -0700
commit43e3d29b9700a5d84c3d16d265849b011a267c12 (patch)
tree5477895eb57aed70d21e2dd207508c78613b6d18 /test/syscalls/linux/prctl.cc
parentb9780f96be58ba0cff8612eef4e909431421e936 (diff)
Implement PR_SET_CHILD_SUBREAPER when the calling task is PID 1.
In this case, the task is already a subreaper, so setting this bit is a noop. Updates #2323 PiperOrigin-RevId: 388828034
Diffstat (limited to 'test/syscalls/linux/prctl.cc')
-rw-r--r--test/syscalls/linux/prctl.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/test/syscalls/linux/prctl.cc b/test/syscalls/linux/prctl.cc
index 25b0e63d4..286b3d168 100644
--- a/test/syscalls/linux/prctl.cc
+++ b/test/syscalls/linux/prctl.cc
@@ -214,6 +214,12 @@ TEST(PrctlTest, RootDumpability) {
SyscallFailsWithErrno(EINVAL));
}
+TEST(PrctlTest, SetGetSubreaper) {
+ // Setting subreaper on PID 1 works vacuously because PID 1 is always a
+ // subreaper.
+ EXPECT_THAT(prctl(PR_SET_CHILD_SUBREAPER, 1), SyscallSucceeds());
+}
+
} // namespace
} // namespace testing