Revert "NFSv4: Fall back to ordinary lookup if nfs4_atomic_open() returns EISDIR"
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Wed, 3 Nov 2010 14:24:16 +0000 (10:24 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 16 Nov 2010 01:44:27 +0000 (20:44 -0500)
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>
fs/nfs/dir.c

index 07ac3847e562b54c26efd30c9a9eabab468c309d..635ff65d3092fa49c841d38d6492f73b970617d9 100644 (file)
@@ -1345,12 +1345,12 @@ static struct dentry *nfs_atomic_lookup(struct inode *dir, struct dentry *dentry
                                res = NULL;
                                goto out;
                        /* This turned out not to be a regular file */
-                       case -EISDIR:
                        case -ENOTDIR:
                                goto no_open;
                        case -ELOOP:
                                if (!(nd->intent.open.flags & O_NOFOLLOW))
                                        goto no_open;
+                       /* case -EISDIR: */
                        /* case -EINVAL: */
                        default:
                                res = ERR_CAST(inode);