Loading fs/namespace.c +9 −9 Original line number Diff line number Diff line Loading @@ -609,16 +609,16 @@ static inline void __mnt_make_shortterm(struct vfsmount *mnt) /* * vfsmount lock must be held for write */ static void commit_tree(struct vfsmount *mnt) static void commit_tree(struct mount *mnt) { struct vfsmount *parent = mnt->mnt_parent; struct vfsmount *parent = mnt->mnt.mnt_parent; struct vfsmount *m; LIST_HEAD(head); struct mnt_namespace *n = parent->mnt_ns; BUG_ON(parent == mnt); BUG_ON(parent == &mnt->mnt); list_add_tail(&head, &mnt->mnt_list); list_add_tail(&head, &mnt->mnt.mnt_list); list_for_each_entry(m, &head, mnt_list) { m->mnt_ns = n; __mnt_make_longterm(m); Loading @@ -626,9 +626,9 @@ static void commit_tree(struct vfsmount *mnt) list_splice(&head, n->list.prev); list_add_tail(&mnt->mnt_hash, mount_hashtable + hash(parent, mnt->mnt_mountpoint)); list_add_tail(&mnt->mnt_child, &parent->mnt_mounts); list_add_tail(&mnt->mnt.mnt_hash, mount_hashtable + hash(parent, mnt->mnt.mnt_mountpoint)); list_add_tail(&mnt->mnt.mnt_child, &parent->mnt_mounts); touch_mnt_namespace(n); } Loading Loading @@ -1617,12 +1617,12 @@ static int attach_recursive_mnt(struct vfsmount *source_mnt, touch_mnt_namespace(parent_path->mnt->mnt_ns); } else { mnt_set_mountpoint(dest_mnt, dest_dentry, source_mnt); commit_tree(source_mnt); commit_tree(real_mount(source_mnt)); } list_for_each_entry_safe(child, p, &tree_list, mnt.mnt_hash) { list_del_init(&child->mnt.mnt_hash); commit_tree(&child->mnt); commit_tree(child); } br_write_unlock(vfsmount_lock); Loading Loading
fs/namespace.c +9 −9 Original line number Diff line number Diff line Loading @@ -609,16 +609,16 @@ static inline void __mnt_make_shortterm(struct vfsmount *mnt) /* * vfsmount lock must be held for write */ static void commit_tree(struct vfsmount *mnt) static void commit_tree(struct mount *mnt) { struct vfsmount *parent = mnt->mnt_parent; struct vfsmount *parent = mnt->mnt.mnt_parent; struct vfsmount *m; LIST_HEAD(head); struct mnt_namespace *n = parent->mnt_ns; BUG_ON(parent == mnt); BUG_ON(parent == &mnt->mnt); list_add_tail(&head, &mnt->mnt_list); list_add_tail(&head, &mnt->mnt.mnt_list); list_for_each_entry(m, &head, mnt_list) { m->mnt_ns = n; __mnt_make_longterm(m); Loading @@ -626,9 +626,9 @@ static void commit_tree(struct vfsmount *mnt) list_splice(&head, n->list.prev); list_add_tail(&mnt->mnt_hash, mount_hashtable + hash(parent, mnt->mnt_mountpoint)); list_add_tail(&mnt->mnt_child, &parent->mnt_mounts); list_add_tail(&mnt->mnt.mnt_hash, mount_hashtable + hash(parent, mnt->mnt.mnt_mountpoint)); list_add_tail(&mnt->mnt.mnt_child, &parent->mnt_mounts); touch_mnt_namespace(n); } Loading Loading @@ -1617,12 +1617,12 @@ static int attach_recursive_mnt(struct vfsmount *source_mnt, touch_mnt_namespace(parent_path->mnt->mnt_ns); } else { mnt_set_mountpoint(dest_mnt, dest_dentry, source_mnt); commit_tree(source_mnt); commit_tree(real_mount(source_mnt)); } list_for_each_entry_safe(child, p, &tree_list, mnt.mnt_hash) { list_del_init(&child->mnt.mnt_hash); commit_tree(&child->mnt); commit_tree(child); } br_write_unlock(vfsmount_lock); Loading