summaryrefslogtreecommitdiffstats
path: root/fs/nfs/getroot.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2011-03-24 22:03:14 +0100
committerTrond Myklebust <Trond.Myklebust@netapp.com>2011-03-24 22:03:14 +0100
commit0acd2201920d0968919f4f5797d63f7b6f2b19d4 (patch)
tree9b241d264f42eff3ff4eeffb67616fca0490e460 /fs/nfs/getroot.c
parentNFS: Determine initial mount security (diff)
parentCleanup XDR parsing for LAYOUTGET, GETDEVICEINFO (diff)
downloadlinux-0acd2201920d0968919f4f5797d63f7b6f2b19d4.tar.xz
linux-0acd2201920d0968919f4f5797d63f7b6f2b19d4.zip
Merge branch 'nfs-for-2.6.39' into nfs-for-next
Diffstat (limited to 'fs/nfs/getroot.c')
-rw-r--r--fs/nfs/getroot.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/nfs/getroot.c b/fs/nfs/getroot.c
index 1084792bc0fe..dcb61548887f 100644
--- a/fs/nfs/getroot.c
+++ b/fs/nfs/getroot.c
@@ -222,6 +222,10 @@ struct dentry *nfs4_get_root(struct super_block *sb, struct nfs_fh *mntfh,
goto out;
}
+ if (fattr->valid & NFS_ATTR_FATTR_FSID &&
+ !nfs_fsid_equal(&server->fsid, &fattr->fsid))
+ memcpy(&server->fsid, &fattr->fsid, sizeof(server->fsid));
+
inode = nfs_fhget(sb, mntfh, fattr);
if (IS_ERR(inode)) {
dprintk("nfs_get_root: get root inode failed\n");