diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-11-03 10:24:16 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-11-15 20:44:27 -0500 |
commit | 23ebbd9acf5756b6eb783df84403e3ab668a6bce (patch) | |
tree | 11f632c35ccd0569b70811ad7b78c14831697041 /fs | |
parent | 1e657bd51f313d87fbbb22d1edf625dba87ef353 (diff) |
Revert "NFSv4: Fall back to ordinary lookup if nfs4_atomic_open() returns EISDIR"
This reverts commit 80e60639f1b7c121a7fea53920c5a4b94009361a.
This change requires further fixes to ensure that the open doesn't
succeed if the lookup later results in a regular file being created.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfs/dir.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 07ac3847e562..635ff65d3092 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -1345,12 +1345,12 @@ static struct dentry *nfs_atomic_lookup(struct inode *dir, struct dentry *dentry | |||
1345 | res = NULL; | 1345 | res = NULL; |
1346 | goto out; | 1346 | goto out; |
1347 | /* This turned out not to be a regular file */ | 1347 | /* This turned out not to be a regular file */ |
1348 | case -EISDIR: | ||
1349 | case -ENOTDIR: | 1348 | case -ENOTDIR: |
1350 | goto no_open; | 1349 | goto no_open; |
1351 | case -ELOOP: | 1350 | case -ELOOP: |
1352 | if (!(nd->intent.open.flags & O_NOFOLLOW)) | 1351 | if (!(nd->intent.open.flags & O_NOFOLLOW)) |
1353 | goto no_open; | 1352 | goto no_open; |
1353 | /* case -EISDIR: */ | ||
1354 | /* case -EINVAL: */ | 1354 | /* case -EINVAL: */ |
1355 | default: | 1355 | default: |
1356 | res = ERR_CAST(inode); | 1356 | res = ERR_CAST(inode); |