summaryrefslogtreecommitdiff
path: root/fs/pnode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-11-25 07:00:28 +0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-01-04 07:57:04 +0400
commit643822b41e5e0f133438883b0be574cdaf168a2a (patch)
tree1b9bbeace5c1078ae6e893e2f826b724411d3a07 /fs/pnode.c
parent676da58df740f325034b8641311413c2393588e1 (diff)
downloadlinux-643822b41e5e0f133438883b0be574cdaf168a2a.tar.xz
vfs: spread struct mount - is_path_reachable
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/pnode.c')
-rw-r--r--fs/pnode.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/pnode.c b/fs/pnode.c
index 3105cca197ec..25f74b53dea6 100644
--- a/fs/pnode.c
+++ b/fs/pnode.c
@@ -32,15 +32,15 @@ static struct vfsmount *get_peer_under_root(struct vfsmount *mnt,
struct mnt_namespace *ns,
const struct path *root)
{
- struct vfsmount *m = mnt;
+ struct mount *m = real_mount(mnt);
do {
/* Check the namespace first for optimization */
- if (m->mnt_ns == ns && is_path_reachable(m, m->mnt_root, root))
- return m;
+ if (m->mnt.mnt_ns == ns && is_path_reachable(m, m->mnt.mnt_root, root))
+ return &m->mnt;
- m = next_peer(m);
- } while (m != mnt);
+ m = real_mount(next_peer(&m->mnt));
+ } while (&m->mnt != mnt);
return NULL;
}