On Mon, May 26, 2025 at 06:47:25AM +0200, Christian Brauner wrote: > On Sat, May 24, 2025 at 12:22:13AM +0100, Al Viro wrote: > > On Fri, May 23, 2025 at 10:37:35PM +0100, Al Viro wrote: > > > On Fri, May 23, 2025 at 10:29:58PM +0100, Al Viro wrote: > > > > > > > This is bogus, IMO. I'm perfectly fine with propagate_one() returning 0 > > > > on anon_ns(m->mnt); that would refuse to propagate into *any* anon ns, > > > > but won't screw the propagation between the mounts that are in normal, non-anon > > > > namespaces. > > > > > > IOW, I mean this variant - the only difference from what you've posted is > > > the location of is_anon_ns() test; you do it in IS_MNT_NEW(), this variant > > > has it in propagate_one(). Does the variant below fix regression? > > > > AFAICS, it does suffice to revert the behaviour change on the reproducer > > upthread. > > > > I've replaced the top of viro/vfs.git#fixes with that; commit message there > > is tentative - if nothing else, that's a patch from Christian with slight > > modifications from me. It also needs reported-by, etc. > > > > Said that, could somebody (original reporter) confirm that the variant > > in git.kernel.org:/pub/scm/linux/kernel/git/viro/vfs.git #fixes (head at > > 63e90fcc1807) is OK with them? > > > > And yes, it will need a proper commit message. Christian? > > Yes, that looks good to me, thank you! OK, I went with the following for commit message: ----- Don't propagate mounts into detached trees All versions up to 6.14 did not propagate mount events into detached tree. Shortly after 6.14 a merge of vfs-6.15-rc1.mount.namespace (130e696aa68b) has changed that. Unfortunately, that has caused userland regressions (reported in https://lore.kernel.org/all/CAOYeF9WQhFDe+BGW=Dp5fK8oRy5AgZ6zokVyTj1Wp4EUiYgt4w@xxxxxxxxxxxxxx/) Straight revert wouldn't be an option - in particular, the variant in 6.14 had a bug that got fixed in d1ddc6f1d9f0 ("fix IS_MNT_PROPAGATING uses") and we don't want to bring the bug back. This is a modification of manual revert posted by Christian, with changes needed to avoid reintroducing the breakage in scenario described in d1ddc6f1d9f0. Cc: stable@xxxxxxxxxxxxxxx Reported-by: Allison Karlitskaya <lis@xxxxxxxxxx> Tested-by: Allison Karlitskaya <lis@xxxxxxxxxx> Acked-by: Christian Brauner <brauner@xxxxxxxxxx> Co-developed-by: Christian Brauner <brauner@xxxxxxxxxx> Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx> ----- It's in viro/vfs.git #fixes; if everyone's OK with the commit message, I'm sending a pull request tomorrow.