All Virtuozzo development lists (kernel + QEMU)
 help / color / mirror / Atom feed
From: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
To: Konstantin Khorenko <khorenko@virtuozzo.com>,
	Vladimir Riabchun <vladimir.riabchun@virtuozzo.com>,
	Vasileios Almpanis <vasileios.almpanis@virtuozzo.com>
Cc: devel@openvz.org
Subject: [Devel] [PATCH hci-8.1 1/2] ve/fs: allow host to go over limit of container mount namespace
Date: Mon, 28 Sep 2026 17:24:57 +0200	[thread overview]
Message-ID: <20260928-b4-ve0-mnt-limit-v1-1-66456b9eaf6f@virtuozzo.com> (raw)
In-Reply-To: <20260928-b4-ve0-mnt-limit-v1-0-66456b9eaf6f@virtuozzo.com>

This is something that CRIU does on dump, to get access to some mounts
(under overmounts) we have to have a copy of namespace where we can try
umounting stuff which covers the path.

Together [1] + [2] lead to those mounts been accounted to ve and not
allowed to go over the limit leading to CRIU fail. Let's relax it back.

[1] commit c53e7bc5f513 ("ve/fs: take the owner of copied mounts from the
namespace, not the task")

https://virtuozzo.atlassian.net/browse/VSTOR-147661
Feature: per-ve failcounters
Fixes: b9c2e2d6ee85 ("ve/fs: count available mounts instead of used ones") [2]
Signed-off-by: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
---
 fs/namespace.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/namespace.c b/fs/namespace.c
index cf77c3fb98407..75cabf7763ef6 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -3367,7 +3367,8 @@ int ve_devmnt_verify(struct ve_struct *ve, dev_t dev, char *opts, bool new_mount
 
 static inline int ve_try_reserve_mount(struct ve_struct *ve)
 {
-	int ret = ve_is_super(ve) || ve->is_pseudosuper;
+	int ret = ve_is_super(ve) || ve->is_pseudosuper ||
+		  ve_is_super(get_exec_env());
 	/* Ignore limits in ve0 and pseudosuper cases, but still count. */
 	if (ret)
 		atomic_dec(&ve->mnt_avail_nr);

-- 
2.55.0

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

  reply	other threads:[~2026-09-28 15:26 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-28 15:24 [Devel] [PATCH hci-8.1 0/2] ve/fs: allow host to go over container mount limit Pavel Tikhomirov
2026-09-28 15:24 ` Pavel Tikhomirov [this message]
2026-09-28 15:24 ` [Devel] [PATCH hci-8.1 2/2] selftests/ve: check that host can " Pavel Tikhomirov
2026-09-30 15:05 ` [Devel] [PATCH hci-8.1 0/2] ve/fs: allow host to " Konstantin Khorenko
2026-09-30 15:09 ` Konstantin Khorenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260928-b4-ve0-mnt-limit-v1-1-66456b9eaf6f@virtuozzo.com \
    --to=ptikhomirov@virtuozzo.com \
    --cc=devel@openvz.org \
    --cc=khorenko@virtuozzo.com \
    --cc=vasileios.almpanis@virtuozzo.com \
    --cc=vladimir.riabchun@virtuozzo.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.