| From | David Howells <> | Subject | [PATCH 38/73] union-mount: Prevent bind mounts of union mounts [ver #2] | Date | Tue, 21 Feb 2012 18:02:16 +0000 |
| |
From: Valerie Aurora <vaurora@redhat.com>
Prevent bind mounts of parts of union mounts.
XXX - Bind mounting parts of union mounts is probably easy to implement, but requires some careful thought about corner cases, extensive testing, and some refactoring of the code.
Original-author: Valerie Aurora <vaurora@redhat.com> Signed-off-by: David Howells <dhowells@redhat.com> ---
fs/namespace.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/fs/namespace.c b/fs/namespace.c index 3c950fa..c990f69 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -1845,6 +1845,12 @@ static int do_loopback(struct path *path, char *old_name, if (IS_MNT_UNBINDABLE(old)) goto out2; + /* XXX - Mounting a subtree of a union mount elsewhere requires careful + * thought and some refactoring. + */ + if (IS_MNT_UNION(old_path.mnt)) + goto out2; + if (!check_mnt(real_mount(path->mnt)) || !check_mnt(old)) goto out2;
|