Received: by 2002:a25:b323:0:0:0:0:0 with SMTP id l35csp361346ybj; Thu, 19 Sep 2019 15:44:55 -0700 (PDT) X-Google-Smtp-Source: APXvYqwh1+wEgooKk+4PIgsKKuIfAy+bCYM4VNLXEQn5WLNVD0kPL+hseLlW7BGxrxwvkqg4/k40 X-Received: by 2002:a17:906:19d3:: with SMTP id h19mr16867498ejd.121.1568933095806; Thu, 19 Sep 2019 15:44:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1568933095; cv=none; d=google.com; s=arc-20160816; b=Y7FFsRT+6F8XEBdSXOkrZYdqjsz4QjmVcqw1UwFIwFvGqE+WnkQnpuJc9/J5+XS8CF kjheGlvb6Zg6iralz9r2IhHfrJM3VGdcTD610GPYgHcophqJ0MAoIQWrZlzXYT6W4DbB RcR9BP1W+WdKlQsnk3zUr68dgOIcLYdJmSzBZQaSnFy4rp1xmTSrJNZTcQwcuSF2D0r4 La88znhKSmzUVmHjKPbuqYaDD7illV8yrsIvf5mEANx+nQe22g7MJRPxq8KzMbpD60VD JWxu9iymUwmE7rX4n5sjw+XZ7Rk+VUImgt/ztTZC73QEcYzmjYs0lhtbynEc3efb4dWE 04cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Ht3lJVL9BiMDeHbwl6RSUIx16OZZ4VaZnlwjWXFzu4Y=; b=iGdtqp0ZaZJaxWb3fok+UkhVSdNUTtC+83VFwpI4wvKjPd/DPAP8kPPqnm2UC79he1 ssp3WS3eShsVCMZlNSRlClMDnwzKMof2TxvRUT+3EZ3BTPof/pw/NUTqgLGxv9v7FMQT 9zFCJu341w3jwjd8v9HVuqrpcnXHzIUZjTWsKHQCRAZrsrihtlDTgibyOTFBXMjEIj8W eJntw4urrAx4Kn7a4HUrrPOBmD/QStpWWM7RAxTP40CUXqUWUTJdbKFL8Px3J6elybGQ n7JIyCLb9aWA78zZ6EyHpOklDC3AIArMoE9WpVxSBMrrHB2j2JJn0K2mkiQaJ451dUaw 7Gbg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=PFSsNDOW; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e27si93246edj.295.2019.09.19.15.44.32; Thu, 19 Sep 2019 15:44:55 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=PFSsNDOW; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2406038AbfISWNU (ORCPT + 99 others); Thu, 19 Sep 2019 18:13:20 -0400 Received: from mail.kernel.org ([198.145.29.99]:52352 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2391072AbfISWNQ (ORCPT ); Thu, 19 Sep 2019 18:13:16 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 0415D21920; Thu, 19 Sep 2019 22:13:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1568931195; bh=bVOk13PRzIHQGBfYtVxop4HBf3WHR2t6grZQC+tJR1A=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PFSsNDOWEp33GdfKJM0NhIB72M+p7LEoWRL8fdRcgfin92iFKW1wXLnUiP1QvoqwY i053Q5rcSBunG1ChVpWgR+UKks7nG7Y3qn6U+n/X9U7CMpNh9cT2X69q+sKGZPdLbI bLdY7XXiL/0mAsOdki7XxSgKcGUlS26+yDA8OTg4= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Trond Myklebust , Sasha Levin Subject: [PATCH 4.19 36/79] NFSv4: Fix return values for nfs4_file_open() Date: Fri, 20 Sep 2019 00:03:21 +0200 Message-Id: <20190919214810.912059766@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20190919214807.612593061@linuxfoundation.org> References: <20190919214807.612593061@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Trond Myklebust [ Upstream commit 90cf500e338ab3f3c0f126ba37e36fb6a9058441 ] Currently, we are translating RPC level errors such as timeouts, as well as interrupts etc into EOPENSTALE, which forces a single replay of the open attempt. What we actually want to do is force the replay only in the cases where the returned error indicates that the file may have changed on the server. So the fix is to spell out the exact set of errors where we want to return EOPENSTALE. Signed-off-by: Trond Myklebust Signed-off-by: Sasha Levin --- fs/nfs/nfs4file.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/fs/nfs/nfs4file.c b/fs/nfs/nfs4file.c index 61abbb087ed13..75d3cf86f1723 100644 --- a/fs/nfs/nfs4file.c +++ b/fs/nfs/nfs4file.c @@ -73,13 +73,13 @@ nfs4_file_open(struct inode *inode, struct file *filp) if (IS_ERR(inode)) { err = PTR_ERR(inode); switch (err) { - case -EPERM: - case -EACCES: - case -EDQUOT: - case -ENOSPC: - case -EROFS: - goto out_put_ctx; default: + goto out_put_ctx; + case -ENOENT: + case -ESTALE: + case -EISDIR: + case -ENOTDIR: + case -ELOOP: goto out_drop; } } -- 2.20.1