Lines Matching refs:child
226 struct mount *child; in propagate_one() local
260 child = copy_tree(last_source, last_source->mnt.mnt_root, type); in propagate_one()
261 if (IS_ERR(child)) in propagate_one()
262 return PTR_ERR(child); in propagate_one()
264 mnt_set_mountpoint(m, dest_mp, child); in propagate_one()
269 last_source = child; in propagate_one()
270 hlist_add_head(&child->mnt_hash, list); in propagate_one()
271 return count_mounts(m->mnt_ns, child); in propagate_one()
337 struct mount *child; in find_topper() local
342 child = list_first_entry(&mnt->mnt_mounts, struct mount, mnt_child); in find_topper()
343 if (child->mnt_mountpoint != mnt->mnt.mnt_root) in find_topper()
346 return child; in find_topper()
409 struct mount *m, *child, *topper; in propagate_mount_busy() local
426 child = __lookup_mnt(&m->mnt, mnt->mnt_mountpoint); in propagate_mount_busy()
427 if (!child) in propagate_mount_busy()
433 topper = find_topper(child); in propagate_mount_busy()
436 else if (!list_empty(&child->mnt_mounts)) in propagate_mount_busy()
439 if (do_refcount_check(child, count)) in propagate_mount_busy()
453 struct mount *m, *child; in propagate_mount_unlock() local
459 child = __lookup_mnt(&m->mnt, mnt->mnt_mountpoint); in propagate_mount_unlock()
460 if (child) in propagate_mount_unlock()
461 child->mnt.mnt_flags &= ~MNT_LOCKED; in propagate_mount_unlock()
483 struct mount *child; in __propagate_umount() local
495 list_for_each_entry(child, &mnt->mnt_mounts, mnt_child) { in __propagate_umount()
496 if (child->mnt_mountpoint == mnt->mnt.mnt_root) in __propagate_umount()
498 if (!list_empty(&child->mnt_umounting) && IS_MNT_MARKED(child)) in __propagate_umount()
522 struct mount *mnt, *child, *tmp; in umount_list() local
524 list_for_each_entry_safe(child, tmp, &mnt->mnt_mounts, mnt_child) { in umount_list()
526 if (child->mnt_mountpoint == mnt->mnt.mnt_root) in umount_list()
527 list_move_tail(&child->mnt_umounting, to_restore); in umount_list()
529 umount_one(child, to_umount); in umount_list()
597 struct mount *child = __lookup_mnt(&m->mnt, in propagate_umount() local
599 if (!child) in propagate_umount()
602 if (!list_empty(&child->mnt_umounting)) { in propagate_umount()
612 } else if (child->mnt.mnt_flags & MNT_UMOUNT) { in propagate_umount()
619 list_add_tail(&child->mnt_umounting, &visited); in propagate_umount()
624 while (__propagate_umount(child, in propagate_umount()
627 child = child->mnt_parent; in propagate_umount()
628 if (list_empty(&child->mnt_umounting)) in propagate_umount()