From: Al Viro Date: Fri, 25 Nov 2011 01:01:19 +0000 (-0500) Subject: vfs: spread struct mount - tree_contains_unbindable X-Git-Tag: v3.3-rc1~170^2~51 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=cbbe362cd68441edf1ebbafeea1c8e09cce4a7f9;p=linux.git vfs: spread struct mount - tree_contains_unbindable Signed-off-by: Al Viro --- diff --git a/fs/namespace.c b/fs/namespace.c index 64ae40c91079..91bd15d9b2cd 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -1845,10 +1845,10 @@ static int do_remount(struct path *path, int flags, int mnt_flags, return err; } -static inline int tree_contains_unbindable(struct vfsmount *mnt) +static inline int tree_contains_unbindable(struct mount *mnt) { struct mount *p; - for (p = real_mount(mnt); p; p = next_mnt(p, mnt)) { + for (p = mnt; p; p = next_mnt(p, &mnt->mnt)) { if (IS_MNT_UNBINDABLE(&p->mnt)) return 1; } @@ -1902,7 +1902,7 @@ static int do_move_mount(struct path *path, char *old_name) * mount which is shared. */ if (IS_MNT_SHARED(path->mnt) && - tree_contains_unbindable(old_path.mnt)) + tree_contains_unbindable(old)) goto out1; err = -ELOOP; for (p = path->mnt; mnt_has_parent(p); p = p->mnt_parent)