summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-11-25 03:28:22 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2012-01-04 04:57:03 +0100
commit44d964d609c7c11b330a3d1caf30767fa13c7be3 (patch)
treec16c93095c8662826ac678730bf8286d96dfb781
parentvfs: spread struct mount - clone_mnt/copy_tree argument (diff)
downloadlinux-44d964d609c7c11b330a3d1caf30767fa13c7be3.tar.xz
linux-44d964d609c7c11b330a3d1caf30767fa13c7be3.zip
vfs: spread struct mount mnt_set_mountpoint child argument
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--fs/namespace.c10
-rw-r--r--fs/pnode.c2
-rw-r--r--fs/pnode.h2
3 files changed, 7 insertions, 7 deletions
diff --git a/fs/namespace.c b/fs/namespace.c
index 211455e2cd17..c11b99af53cf 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -570,10 +570,10 @@ static void detach_mnt(struct mount *mnt, struct path *old_path)
* vfsmount lock must be held for write
*/
void mnt_set_mountpoint(struct vfsmount *mnt, struct dentry *dentry,
- struct vfsmount *child_mnt)
+ struct mount *child_mnt)
{
- child_mnt->mnt_parent = mntget(mnt);
- child_mnt->mnt_mountpoint = dget(dentry);
+ child_mnt->mnt.mnt_parent = mntget(mnt);
+ child_mnt->mnt.mnt_mountpoint = dget(dentry);
spin_lock(&dentry->d_lock);
dentry->d_flags |= DCACHE_MOUNTED;
spin_unlock(&dentry->d_lock);
@@ -584,7 +584,7 @@ void mnt_set_mountpoint(struct vfsmount *mnt, struct dentry *dentry,
*/
static void attach_mnt(struct mount *mnt, struct path *path)
{
- mnt_set_mountpoint(path->mnt, path->dentry, &mnt->mnt);
+ mnt_set_mountpoint(path->mnt, path->dentry, mnt);
list_add_tail(&mnt->mnt_hash, mount_hashtable +
hash(path->mnt, path->dentry));
list_add_tail(&mnt->mnt.mnt_child, &path->mnt->mnt_mounts);
@@ -1617,7 +1617,7 @@ static int attach_recursive_mnt(struct mount *source_mnt,
attach_mnt(source_mnt, path);
touch_mnt_namespace(parent_path->mnt->mnt_ns);
} else {
- mnt_set_mountpoint(dest_mnt, dest_dentry, &source_mnt->mnt);
+ mnt_set_mountpoint(dest_mnt, dest_dentry, source_mnt);
commit_tree(source_mnt);
}
diff --git a/fs/pnode.c b/fs/pnode.c
index 5d79f38e3e8a..89ea50dc2af3 100644
--- a/fs/pnode.c
+++ b/fs/pnode.c
@@ -246,7 +246,7 @@ int propagate_mnt(struct vfsmount *dest_mnt, struct dentry *dest_dentry,
}
if (is_subdir(dest_dentry, m->mnt_root)) {
- mnt_set_mountpoint(m, dest_dentry, &child->mnt);
+ mnt_set_mountpoint(m, dest_dentry, child);
list_add_tail(&child->mnt_hash, tree_list);
} else {
/*
diff --git a/fs/pnode.h b/fs/pnode.h
index 609ec008d5ce..bfd0bbcabf6d 100644
--- a/fs/pnode.h
+++ b/fs/pnode.h
@@ -38,7 +38,7 @@ void mnt_release_group_id(struct mount *);
int get_dominating_id(struct vfsmount *mnt, const struct path *root);
unsigned int mnt_get_count(struct vfsmount *mnt);
void mnt_set_mountpoint(struct vfsmount *, struct dentry *,
- struct vfsmount *);
+ struct mount *);
void release_mounts(struct list_head *);
void umount_tree(struct mount *, int, struct list_head *);
struct mount *copy_tree(struct mount *, struct dentry *, int);