git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Leave superblocks on s_list until the end
[safe/jmp/linux-2.6]
/
fs
/
namespace.c
diff --git
a/fs/namespace.c
b/fs/namespace.c
index
7a0c9ce
..
88058de
100644
(file)
--- a/
fs/namespace.c
+++ b/
fs/namespace.c
@@
-1429,7
+1429,7
@@
static int graft_tree(struct vfsmount *mnt, struct path *path)
err = -ENOENT;
mutex_lock(&path->dentry->d_inode->i_mutex);
err = -ENOENT;
mutex_lock(&path->dentry->d_inode->i_mutex);
- if (
IS_DEADDIR(path->dentry->d_inode
))
+ if (
cant_mount(path->dentry
))
goto out_unlock;
if (!d_unlinked(path->dentry))
goto out_unlock;
if (!d_unlinked(path->dentry))
@@
-1611,7
+1611,7
@@
static int do_move_mount(struct path *path, char *old_name)
err = -ENOENT;
mutex_lock(&path->dentry->d_inode->i_mutex);
err = -ENOENT;
mutex_lock(&path->dentry->d_inode->i_mutex);
- if (
IS_DEADDIR(path->dentry->d_inode
))
+ if (
cant_mount(path->dentry
))
goto out1;
if (d_unlinked(path->dentry))
goto out1;
if (d_unlinked(path->dentry))
@@
-2222,7
+2222,7
@@
SYSCALL_DEFINE2(pivot_root, const char __user *, new_root,
if (!check_mnt(root.mnt))
goto out2;
error = -ENOENT;
if (!check_mnt(root.mnt))
goto out2;
error = -ENOENT;
- if (
IS_DEADDIR(new.dentry->d_inode
))
+ if (
cant_mount(old.dentry
))
goto out2;
if (d_unlinked(new.dentry))
goto out2;
goto out2;
if (d_unlinked(new.dentry))
goto out2;
@@
-2265,7
+2265,6
@@
SYSCALL_DEFINE2(pivot_root, const char __user *, new_root,
touch_mnt_namespace(current->nsproxy->mnt_ns);
spin_unlock(&vfsmount_lock);
chroot_fs_refs(&root, &new);
touch_mnt_namespace(current->nsproxy->mnt_ns);
spin_unlock(&vfsmount_lock);
chroot_fs_refs(&root, &new);
- security_sb_post_pivotroot(&root, &new);
error = 0;
path_put(&root_parent);
path_put(&parent_path);
error = 0;
path_put(&root_parent);
path_put(&parent_path);