Unverified Commit 0c0b0463 authored by Christian Brauner's avatar Christian Brauner
Browse files

mount: start iterating from start of rbtree

If the root of the namespace has an id that's greater than the child
we'd not find it. Handle that case.

Link: https://patch.msgid.link/20260122-work-fsmount-namespace-v1-1-5ef0a886e646@kernel.org


Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parent 1f318b96
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -5649,14 +5649,14 @@ static int grab_requested_root(struct mnt_namespace *ns, struct path *root)
	if (mnt_ns_empty(ns))
		return -ENOENT;

	first = child = ns->root;
	for (;;) {
		child = listmnt_next(child, false);
		if (!child)
			return -ENOENT;
		if (child->mnt_parent == first)
	first = ns->root;
	for (child = node_to_mount(ns->mnt_first_node); child;
	     child = listmnt_next(child, false)) {
		if (child != first && child->mnt_parent == first)
			break;
	}
	if (!child)
		return -ENOENT;

	root->mnt = mntget(&child->mnt);
	root->dentry = dget(root->mnt->mnt_root);