aboutsummaryrefslogtreecommitdiffstats
path: root/fs/pnode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-11-24 18:22:03 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2012-01-03 22:56:58 -0500
commitc71053659e3bb27d44b79da0bb4abf5838c2060a (patch)
tree59e86cc1602db35ffc2c3991953161f1619706b1 /fs/pnode.c
parent7d6fec45a5131918b51dcd76da52f2ec86a85be6 (diff)
vfs: spread struct mount - __lookup_mnt() result
switch __lookup_mnt() to returning struct mount *; callers adjusted. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/pnode.c')
-rw-r--r--fs/pnode.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/fs/pnode.c b/fs/pnode.c
index 4d5a06ea57a2..e996d039c0f2 100644
--- a/fs/pnode.c
+++ b/fs/pnode.c
@@ -289,7 +289,8 @@ static inline int do_refcount_check(struct vfsmount *mnt, int count)
289 */ 289 */
290int propagate_mount_busy(struct vfsmount *mnt, int refcnt) 290int propagate_mount_busy(struct vfsmount *mnt, int refcnt)
291{ 291{
292 struct vfsmount *m, *child; 292 struct vfsmount *m;
293 struct mount *child;
293 struct vfsmount *parent = mnt->mnt_parent; 294 struct vfsmount *parent = mnt->mnt_parent;
294 int ret = 0; 295 int ret = 0;
295 296
@@ -307,8 +308,8 @@ int propagate_mount_busy(struct vfsmount *mnt, int refcnt)
307 for (m = propagation_next(parent, parent); m; 308 for (m = propagation_next(parent, parent); m;
308 m = propagation_next(m, parent)) { 309 m = propagation_next(m, parent)) {
309 child = __lookup_mnt(m, mnt->mnt_mountpoint, 0); 310 child = __lookup_mnt(m, mnt->mnt_mountpoint, 0);
310 if (child && list_empty(&child->mnt_mounts) && 311 if (child && list_empty(&child->mnt.mnt_mounts) &&
311 (ret = do_refcount_check(child, 1))) 312 (ret = do_refcount_check(&child->mnt, 1)))
312 break; 313 break;
313 } 314 }
314 return ret; 315 return ret;
@@ -328,14 +329,14 @@ static void __propagate_umount(struct vfsmount *mnt)
328 for (m = propagation_next(parent, parent); m; 329 for (m = propagation_next(parent, parent); m;
329 m = propagation_next(m, parent)) { 330 m = propagation_next(m, parent)) {
330 331
331 struct vfsmount *child = __lookup_mnt(m, 332 struct mount *child = __lookup_mnt(m,
332 mnt->mnt_mountpoint, 0); 333 mnt->mnt_mountpoint, 0);
333 /* 334 /*
334 * umount the child only if the child has no 335 * umount the child only if the child has no
335 * other children 336 * other children
336 */ 337 */
337 if (child && list_empty(&child->mnt_mounts)) 338 if (child && list_empty(&child->mnt.mnt_mounts))
338 list_move_tail(&child->mnt_hash, &mnt->mnt_hash); 339 list_move_tail(&child->mnt.mnt_hash, &mnt->mnt_hash);
339 } 340 }
340} 341}
341 342