Lines Matching refs:child
227 struct mount *child; in propagate_one() local
261 child = copy_tree(last_source, last_source->mnt.mnt_root, type); in propagate_one()
262 if (IS_ERR(child)) in propagate_one()
263 return PTR_ERR(child); in propagate_one()
264 mnt_set_mountpoint(m, mp, child); in propagate_one()
266 last_source = child; in propagate_one()
272 hlist_add_head(&child->mnt_hash, list); in propagate_one()
273 return count_mounts(m->mnt_ns, child); in propagate_one()
340 struct mount *child; in find_topper() local
345 child = list_first_entry(&mnt->mnt_mounts, struct mount, mnt_child); in find_topper()
346 if (child->mnt_mountpoint != mnt->mnt.mnt_root) in find_topper()
349 return child; in find_topper()
372 struct mount *m, *child, *topper; in propagate_mount_busy() local
389 child = __lookup_mnt(&m->mnt, mnt->mnt_mountpoint); in propagate_mount_busy()
390 if (!child) in propagate_mount_busy()
396 topper = find_topper(child); in propagate_mount_busy()
399 else if (!list_empty(&child->mnt_mounts)) in propagate_mount_busy()
402 if (do_refcount_check(child, count)) in propagate_mount_busy()
416 struct mount *m, *child; in propagate_mount_unlock() local
422 child = __lookup_mnt(&m->mnt, mnt->mnt_mountpoint); in propagate_mount_unlock()
423 if (child) in propagate_mount_unlock()
424 child->mnt.mnt_flags &= ~MNT_LOCKED; in propagate_mount_unlock()
446 struct mount *child; in __propagate_umount() local
458 list_for_each_entry(child, &mnt->mnt_mounts, mnt_child) { in __propagate_umount()
459 if (child->mnt_mountpoint == mnt->mnt.mnt_root) in __propagate_umount()
461 if (!list_empty(&child->mnt_umounting) && IS_MNT_MARKED(child)) in __propagate_umount()
485 struct mount *mnt, *child, *tmp; in umount_list() local
487 list_for_each_entry_safe(child, tmp, &mnt->mnt_mounts, mnt_child) { in umount_list()
489 if (child->mnt_mountpoint == mnt->mnt.mnt_root) in umount_list()
490 list_move_tail(&child->mnt_umounting, to_restore); in umount_list()
492 umount_one(child, to_umount); in umount_list()
560 struct mount *child = __lookup_mnt(&m->mnt, in propagate_umount() local
562 if (!child) in propagate_umount()
565 if (!list_empty(&child->mnt_umounting)) { in propagate_umount()
575 } else if (child->mnt.mnt_flags & MNT_UMOUNT) { in propagate_umount()
582 list_add_tail(&child->mnt_umounting, &visited); in propagate_umount()
587 while (__propagate_umount(child, in propagate_umount()
590 child = child->mnt_parent; in propagate_umount()
591 if (list_empty(&child->mnt_umounting)) in propagate_umount()