aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2007-10-01 20:10:12 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2007-10-09 17:20:03 -0400
commit216d5d06883edfaf992ada0d72a2a22fdfdbd296 (patch)
tree4b3ff79736cb09a2bb565383232243971a9a8e2f
parent0a5ebc148879be68acdb12fbe72b65cb88c410d9 (diff)
NFSv4: Use NFSv2/v3 rules for negative dentries in nfs_open_revalidate
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
-rw-r--r--fs/nfs/dir.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index 9ca38ab0e0a7..41b063c98822 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -1037,8 +1037,12 @@ static int nfs_open_revalidate(struct dentry *dentry, struct nameidata *nd)
1037 /* We can't create new files in nfs_open_revalidate(), so we 1037 /* We can't create new files in nfs_open_revalidate(), so we
1038 * optimize away revalidation of negative dentries. 1038 * optimize away revalidation of negative dentries.
1039 */ 1039 */
1040 if (inode == NULL) 1040 if (inode == NULL) {
1041 if (!nfs_neg_need_reval(dir, dentry, nd))
1042 ret = 1;
1041 goto out; 1043 goto out;
1044 }
1045
1042 /* NFS only supports OPEN on regular files */ 1046 /* NFS only supports OPEN on regular files */
1043 if (!S_ISREG(inode->i_mode)) 1047 if (!S_ISREG(inode->i_mode))
1044 goto no_open; 1048 goto no_open;