Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 231527
b: refs/heads/master
c: 7b8a53f
h: refs/heads/master
i:
  231525: 2b8bda9
  231523: dafed7a
  231519: c6c6122
v: v3
  • Loading branch information
Al Viro committed Jan 16, 2011
1 parent 71d70d7 commit 02580d1
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b650c858c26bd9ba29ebc82d30f09355845a294a
refs/heads/master: 7b8a53fd815deb39542085897743fa0063f9fe06
8 changes: 5 additions & 3 deletions trunk/fs/namespace.c
Original file line number Diff line number Diff line change
Expand Up @@ -1226,15 +1226,16 @@ void release_mounts(struct list_head *head)
*/
void umount_tree(struct vfsmount *mnt, int propagate, struct list_head *kill)
{
LIST_HEAD(tmp_list);
struct vfsmount *p;

for (p = mnt; p; p = next_mnt(p, mnt))
list_move(&p->mnt_hash, kill);
list_move(&p->mnt_hash, &tmp_list);

if (propagate)
propagate_umount(kill);
propagate_umount(&tmp_list);

list_for_each_entry(p, kill, mnt_hash) {
list_for_each_entry(p, &tmp_list, mnt_hash) {
list_del_init(&p->mnt_expire);
list_del_init(&p->mnt_list);
__touch_mnt_namespace(p->mnt_ns);
Expand All @@ -1246,6 +1247,7 @@ void umount_tree(struct vfsmount *mnt, int propagate, struct list_head *kill)
}
change_mnt_propagation(p, MS_PRIVATE);
}
list_splice(&tmp_list, kill);
}

static void shrink_submounts(struct vfsmount *mnt, struct list_head *umounts);
Expand Down

0 comments on commit 02580d1

Please sign in to comment.