diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-04-22 15:35:55 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-04-22 15:35:55 -0400 |
commit | 1f063d2cdf332a8a5722006b1345d15d16007c6e (patch) | |
tree | 4295c3fd46390f12e1ed2354998a91007f85fb13 /fs/nfs/dir.c | |
parent | 3d7b08945e54a3a5358d5890240619a013cb7388 (diff) |
NFSv4: Don't attempt an atomic open if the file is a mountpoint
Fix https://bugzilla.kernel.org/show_bug.cgi?id=15789
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/dir.c')
-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 be46f26c9a56..fbb4cf79a20e 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -1050,7 +1050,7 @@ static int nfs_open_revalidate(struct dentry *dentry, struct nameidata *nd) | |||
1050 | struct inode *dir; | 1050 | struct inode *dir; |
1051 | int openflags, ret = 0; | 1051 | int openflags, ret = 0; |
1052 | 1052 | ||
1053 | if (!is_atomic_open(nd)) | 1053 | if (!is_atomic_open(nd) || d_mountpoint(dentry)) |
1054 | goto no_open; | 1054 | goto no_open; |
1055 | parent = dget_parent(dentry); | 1055 | parent = dget_parent(dentry); |
1056 | dir = parent->d_inode; | 1056 | dir = parent->d_inode; |