summaryrefslogtreecommitdiff
path: root/fs/pnode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-11-24 18:25:28 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2012-01-03 22:56:58 -0500
commit61ef47b1e4ba9f2b939e6772e2f96082df0ae7eb (patch)
tree55ac1bc3538a285a1c8e950a6af1d2fb12cae2c4 /fs/pnode.c
parentc71053659e3bb27d44b79da0bb4abf5838c2060a (diff)
downloadlwn-61ef47b1e4ba9f2b939e6772e2f96082df0ae7eb.tar.gz
lwn-61ef47b1e4ba9f2b939e6772e2f96082df0ae7eb.zip
vfs: spread struct mount - __propagate_umount() argument
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/pnode.c')
-rw-r--r--fs/pnode.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/fs/pnode.c b/fs/pnode.c
index e996d039c0f2..ae5b1bda31ba 100644
--- a/fs/pnode.c
+++ b/fs/pnode.c
@@ -319,24 +319,24 @@ int propagate_mount_busy(struct vfsmount *mnt, int refcnt)
* NOTE: unmounting 'mnt' naturally propagates to all other mounts its
* parent propagates to.
*/
-static void __propagate_umount(struct vfsmount *mnt)
+static void __propagate_umount(struct mount *mnt)
{
- struct vfsmount *parent = mnt->mnt_parent;
+ struct vfsmount *parent = mnt->mnt.mnt_parent;
struct vfsmount *m;
- BUG_ON(parent == mnt);
+ BUG_ON(parent == &mnt->mnt);
for (m = propagation_next(parent, parent); m;
m = propagation_next(m, parent)) {
struct mount *child = __lookup_mnt(m,
- mnt->mnt_mountpoint, 0);
+ mnt->mnt.mnt_mountpoint, 0);
/*
* umount the child only if the child has no
* other children
*/
if (child && list_empty(&child->mnt.mnt_mounts))
- list_move_tail(&child->mnt.mnt_hash, &mnt->mnt_hash);
+ list_move_tail(&child->mnt.mnt_hash, &mnt->mnt.mnt_hash);
}
}
@@ -349,9 +349,9 @@ static void __propagate_umount(struct vfsmount *mnt)
*/
int propagate_umount(struct list_head *list)
{
- struct vfsmount *mnt;
+ struct mount *mnt;
- list_for_each_entry(mnt, list, mnt_hash)
+ list_for_each_entry(mnt, list, mnt.mnt_hash)
__propagate_umount(mnt);
return 0;
}