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: v4.14.146~37 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=227755c8facd0f59738b74270a6c28b1ce4a8bb7;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 85a6fdd76e20b..50c181fa00251 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c @@ -1470,7 +1470,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; }