From: Trond Myklebust Date: Fri, 9 Aug 2019 16:15:07 +0000 (-0400) Subject: NFSv4: Fix return value in nfs_finish_open() X-Git-Tag: v5.2.17~74 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d29a04e98cdb2f17b64b51d5dcf5a6848e1ba2e5;p=thirdparty%2Fkernel%2Fstable.git NFSv4: Fix return value in nfs_finish_open() [ Upstream commit 9821421a291b548ef4369c6998745baa36ddecd5 ] If the file turns out to be of the wrong type after opening, we want to revalidate the path and retry, so return EOPENSTALE rather than ESTALE. Signed-off-by: Trond Myklebust Signed-off-by: Sasha Levin --- diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 9f44ddc34c7bf..3321cc7a7ead1 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c @@ -1483,7 +1483,7 @@ static int nfs_finish_open(struct nfs_open_context *ctx, if (S_ISREG(file->f_path.dentry->d_inode->i_mode)) nfs_file_set_open_context(file, ctx); else - err = -ESTALE; + err = -EOPENSTALE; out: return err; }