diff options
Diffstat (limited to 'fs/namespace.c')
-rw-r--r-- | fs/namespace.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/namespace.c b/fs/namespace.c index 2414feb..8815c8b 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -1507,7 +1507,11 @@ struct vfsmount *collect_mounts(struct path *path) { struct vfsmount *tree; down_write(&namespace_sem); - tree = copy_tree(path->mnt, path->dentry, CL_COPY_ALL | CL_PRIVATE); + if (!check_mnt(path->mnt)) + tree = ERR_PTR(-EINVAL); + else + tree = copy_tree(path->mnt, path->dentry, + CL_COPY_ALL | CL_PRIVATE); up_write(&namespace_sem); if (IS_ERR(tree)) return NULL; |