73 lines
4.4 KiB
Diff
73 lines
4.4 KiB
Diff
From 05f890fb4841d10372aee1413340013e701ee210 Mon Sep 17 00:00:00 2001
|
|
From: David Tardon <dtardon@redhat.com>
|
|
Date: Thu, 25 Jun 2026 14:28:13 +0200
|
|
Subject: [PATCH] Revert "nspawn: enable usrquota support on /tmp/ and
|
|
/dev/shm/"
|
|
|
|
This reverts commit b9cfb8c02ec36304e0a3ba730363a6dd747dd26a.
|
|
|
|
Reverts: RHEL-143028
|
|
---
|
|
src/nspawn/nspawn-mount.c | 21 ++-------------------
|
|
src/nspawn/nspawn-mount.h | 1 -
|
|
2 files changed, 2 insertions(+), 20 deletions(-)
|
|
|
|
diff --git a/src/nspawn/nspawn-mount.c b/src/nspawn/nspawn-mount.c
|
|
index cd5a634ec0..c233cdf600 100644
|
|
--- a/src/nspawn/nspawn-mount.c
|
|
+++ b/src/nspawn/nspawn-mount.c
|
|
@@ -592,7 +592,7 @@ int mount_all(const char *dest,
|
|
|
|
/* Then we list outer child mounts (i.e. mounts applied *before* entering user namespacing when we are privileged) */
|
|
{ "tmpfs", "/tmp", "tmpfs", "mode=01777" NESTED_TMPFS_LIMITS, MS_NOSUID|MS_NODEV|MS_STRICTATIME,
|
|
- MOUNT_FATAL|MOUNT_APPLY_TMPFS_TMP|MOUNT_MKDIR|MOUNT_USRQUOTA_GRACEFUL },
|
|
+ MOUNT_FATAL|MOUNT_APPLY_TMPFS_TMP|MOUNT_MKDIR },
|
|
{ "tmpfs", "/sys", "tmpfs", "mode=0555" TMPFS_LIMITS_SYS, MS_NOSUID|MS_NOEXEC|MS_NODEV,
|
|
MOUNT_FATAL|MOUNT_APPLY_APIVFS_NETNS|MOUNT_MKDIR|MOUNT_PRIVILEGED },
|
|
{ "sysfs", "/sys", "sysfs", NULL, SYS_DEFAULT_MOUNT_FLAGS,
|
|
@@ -602,7 +602,7 @@ int mount_all(const char *dest,
|
|
{ "tmpfs", "/dev", "tmpfs", "mode=0755" TMPFS_LIMITS_PRIVATE_DEV, MS_NOSUID|MS_STRICTATIME,
|
|
MOUNT_FATAL|MOUNT_MKDIR },
|
|
{ "tmpfs", "/dev/shm", "tmpfs", "mode=01777" NESTED_TMPFS_LIMITS, MS_NOSUID|MS_NODEV|MS_STRICTATIME,
|
|
- MOUNT_FATAL|MOUNT_MKDIR|MOUNT_USRQUOTA_GRACEFUL },
|
|
+ MOUNT_FATAL|MOUNT_MKDIR },
|
|
{ "tmpfs", "/run", "tmpfs", "mode=0755" TMPFS_LIMITS_RUN, MS_NOSUID|MS_NODEV|MS_STRICTATIME,
|
|
MOUNT_FATAL|MOUNT_MKDIR },
|
|
{ "/run/host", "/run/host", NULL, NULL, MS_BIND,
|
|
@@ -710,23 +710,6 @@ int mount_all(const char *dest,
|
|
o = options;
|
|
}
|
|
|
|
- if (FLAGS_SET(m->mount_settings, MOUNT_USRQUOTA_GRACEFUL)) {
|
|
- r = mount_option_supported(m->type, /* key= */ "usrquota", /* value= */ NULL);
|
|
- if (r < 0)
|
|
- log_warning_errno(r, "Failed to determine if '%s' supports 'usrquota', assuming it doesn't: %m", m->type);
|
|
- else if (r == 0)
|
|
- log_debug("Kernel doesn't support 'usrquota' on '%s', not including in mount options for '%s'.", m->type, m->where);
|
|
- else {
|
|
- _cleanup_free_ char *joined = NULL;
|
|
-
|
|
- if (!strextend_with_separator(&joined, ",", o ?: POINTER_MAX, "usrquota"))
|
|
- return log_oom();
|
|
-
|
|
- free_and_replace(options, joined);
|
|
- o = options;
|
|
- }
|
|
- }
|
|
-
|
|
if (FLAGS_SET(m->mount_settings, MOUNT_PREFIX_ROOT)) {
|
|
/* Optionally prefix the mount source with the root dir. This is useful in bind
|
|
* mounts to be created within the container image before we transition into it. Note
|
|
diff --git a/src/nspawn/nspawn-mount.h b/src/nspawn/nspawn-mount.h
|
|
index 529fa16658..5f66bc7328 100644
|
|
--- a/src/nspawn/nspawn-mount.h
|
|
+++ b/src/nspawn/nspawn-mount.h
|
|
@@ -21,7 +21,6 @@ typedef enum MountSettingsMask {
|
|
MOUNT_PREFIX_ROOT = 1 << 10,/* if set, prefix the source path with the container's root directory */
|
|
MOUNT_FOLLOW_SYMLINKS = 1 << 11,/* if set, we'll follow symlinks for the mount target */
|
|
MOUNT_PRIVILEGED = 1 << 12,/* if set, we'll only mount this in the outer child if we are running in privileged mode */
|
|
- MOUNT_USRQUOTA_GRACEFUL = 1 << 13,/* if set, append "usrquota" to mount options if kernel tmpfs supports that */
|
|
} MountSettingsMask;
|
|
|
|
typedef enum CustomMountType {
|