aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorChristian Brauner <brauner@kernel.org>2026-09-17 13:49:03 +0200
committerChristian Brauner <brauner@kernel.org>2026-09-23 09:03:18 +0200
commit76ebb69da677d2a4c5e59bf758b6424d511f5684 (patch)
treea027ab3cad1b9737684c78cd0fef990f98a71589 /tools
parentf615c80a5d3e16eee2377c63e20ae79038ae3376 (diff)
Revert "selftests/filesystems: add mntns cleanup test"
This reverts commit 3452eecbcc954ef859b7d19309c121a78d6d0e31. The test checks that the mounts of a destroyed mount namespace stay connected. The commit that made them stay connected is reverted next because it leaks superblocks and loop devices, so drop the test with it. Link: https://patch.msgid.link/20260917-work-put_mnt_ns-revert-v1-1-34d9b8679e68@kernel.org Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r--tools/testing/selftests/Makefile1
-rw-r--r--tools/testing/selftests/filesystems/mntns_cleanup/.gitignore2
-rw-r--r--tools/testing/selftests/filesystems/mntns_cleanup/Makefile6
-rw-r--r--tools/testing/selftests/filesystems/mntns_cleanup/mntns_cleanup_test.c58
4 files changed, 0 insertions, 67 deletions
diff --git a/tools/testing/selftests/Makefile b/tools/testing/selftests/Makefile
index 330d061f6366..273853937c25 100644
--- a/tools/testing/selftests/Makefile
+++ b/tools/testing/selftests/Makefile
@@ -49,7 +49,6 @@ TARGETS += filesystems/move_mount
TARGETS += filesystems/empty_mntns
TARGETS += filesystems/fsmount_ns
TARGETS += filesystems/fscontext_ns
-TARGETS += filesystems/mntns_cleanup
TARGETS += filesystems/xattr
TARGETS += firmware
TARGETS += fpu
diff --git a/tools/testing/selftests/filesystems/mntns_cleanup/.gitignore b/tools/testing/selftests/filesystems/mntns_cleanup/.gitignore
deleted file mode 100644
index 493fbcf8d9ec..000000000000
--- a/tools/testing/selftests/filesystems/mntns_cleanup/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0-only
-mntns_cleanup_test
diff --git a/tools/testing/selftests/filesystems/mntns_cleanup/Makefile b/tools/testing/selftests/filesystems/mntns_cleanup/Makefile
deleted file mode 100644
index 0e09e7030a5c..000000000000
--- a/tools/testing/selftests/filesystems/mntns_cleanup/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0
-TEST_GEN_PROGS := mntns_cleanup_test
-
-CFLAGS += -Wall -O2 -g $(KHDR_INCLUDES)
-
-include ../../lib.mk
diff --git a/tools/testing/selftests/filesystems/mntns_cleanup/mntns_cleanup_test.c b/tools/testing/selftests/filesystems/mntns_cleanup/mntns_cleanup_test.c
deleted file mode 100644
index 5209712568b1..000000000000
--- a/tools/testing/selftests/filesystems/mntns_cleanup/mntns_cleanup_test.c
+++ /dev/null
@@ -1,58 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-
-#define _GNU_SOURCE
-#include <errno.h>
-#include <fcntl.h>
-#include <sched.h>
-#include <sys/mount.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-#include "../../kselftest_harness.h"
-
-FIXTURE(mntns_cleanup) {
-};
-
-FIXTURE_SETUP(mntns_cleanup)
-{
- if (geteuid() != 0)
- SKIP(return, "test requires CAP_SYS_ADMIN");
-
- ASSERT_EQ(unshare(CLONE_NEWNS), 0);
- ASSERT_EQ(mount("", "/", NULL, MS_REC | MS_PRIVATE, NULL), 0);
-
- rmdir("/mnt_dir");
- ASSERT_EQ(mkdir("/mnt_dir", 0755), 0);
- ASSERT_EQ(mount("tmpfs", "/mnt_dir", "tmpfs", 0, NULL), 0);
- ASSERT_EQ(mkdir("/mnt_dir/hidden", 0755), 0);
- ASSERT_EQ(mkdir("/mnt_dir/hidden/secret", 0755), 0);
- ASSERT_EQ(mount("tmpfs", "/mnt_dir/hidden", "tmpfs", 0, NULL), 0);
-}
-
-FIXTURE_TEARDOWN(mntns_cleanup)
-{
-}
-
-/* Mounts must stay connected when a mount namespace is cleaned up. */
-TEST_F(mntns_cleanup, keeps_mounts_connected)
-{
- int fd, sfd, err;
-
- fd = open("/mnt_dir", O_PATH | O_DIRECTORY | O_CLOEXEC);
- ASSERT_GE(fd, 0);
-
- /* Destroy the namespace; the fd keeps /mnt_dir alive. */
- ASSERT_EQ(unshare(CLONE_NEWNS), 0);
-
- sfd = openat(fd, "hidden/secret", O_RDONLY);
- err = errno;
- if (sfd >= 0)
- close(sfd);
- close(fd);
-
- ASSERT_LT(sfd, 0)
- TH_LOG("mount namespace teardown revealed what the overmount covered");
- ASSERT_EQ(err, ENOENT);
-}
-
-TEST_HARNESS_MAIN