diff options
author | J. Bruce Fields <bfields@citi.umich.edu> | 2009-09-26 16:53:01 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@citi.umich.edu> | 2009-09-28 12:07:52 -0400 |
commit | fed83811269d0f559d2da9139e12c5e5d9874d5c (patch) | |
tree | 148843d2c71b54ec556a46702c3a0e3e8d1056d4 /fs/nfsd | |
parent | 03d6a74b5f85ff46f20e1382982b7f4860f5fec6 (diff) | |
download | linux-3.10-fed83811269d0f559d2da9139e12c5e5d9874d5c.tar.gz linux-3.10-fed83811269d0f559d2da9139e12c5e5d9874d5c.tar.bz2 linux-3.10-fed83811269d0f559d2da9139e12c5e5d9874d5c.zip |
nfsd4: cross mountpoints when looking up parents
3c394ddaa7ea4205f933fd9b481166b2669368a9 "nfsd4: nfsv4 clients should
cross mountpoints" forgot to handle lookups of parents directories.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Diffstat (limited to 'fs/nfsd')
-rw-r--r-- | fs/nfsd/vfs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c index a293f027326..b8ed58bab8b 100644 --- a/fs/nfsd/vfs.c +++ b/fs/nfsd/vfs.c @@ -169,7 +169,7 @@ nfsd_lookup_dentry(struct svc_rqst *rqstp, struct svc_fh *fhp, dentry = dget(dparent); else if (dparent != exp->ex_path.dentry) dentry = dget_parent(dparent); - else if (!EX_NOHIDE(exp)) + else if (!EX_NOHIDE(exp) && !nfsd_v4client(rqstp)) dentry = dget(dparent); /* .. == . just like at / */ else { /* checking mountpoint crossing is very different when stepping up */ |