mnt: In detach_mounts detach the appropriate unmounted mount
authorEric W. Biederman <ebiederm@xmission.com>
Fri, 17 Jul 2015 19:54:27 +0000 (14:54 -0500)
committerEric W. Biederman <ebiederm@xmission.com>
Thu, 23 Jul 2015 16:31:15 +0000 (11:31 -0500)
commitfe78fcc85a2046c51f1535710996860557eeec20
treec2b14e62175f897bb1157606796fef4dbd5dc9d3
parentf2d0a123bcf16d1a9cf7942ddc98e0ef77862c2b
mnt: In detach_mounts detach the appropriate unmounted mount

The handling of in detach_mounts of unmounted but connected mounts is
buggy and can lead to an infinite loop.

Correct the handling of unmounted mounts in detach_mount.  When the
mountpoint of an unmounted but connected mount is connected to a
dentry, and that dentry is deleted we need to disconnect that mount
from the parent mount and the deleted dentry.

Nothing changes for the unmounted and connected children.  They can be
safely ignored.

Cc: stable@vger.kernel.org
Fixes: ce07d891a0891d3c0d0c2d73d577490486b809e1 mnt: Honor MNT_LOCKED when detaching mounts
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
fs/namespace.c