Received: by 2002:a25:b323:0:0:0:0:0 with SMTP id l35csp891385ybj; Fri, 20 Sep 2019 01:32:23 -0700 (PDT) X-Google-Smtp-Source: APXvYqxjRSPPctFP/fkK+gjtRHiAPCYAR6AYMumS08JL5Ot9pvWk0OqfTUaPrAK7aaZEl133bc7y X-Received: by 2002:aa7:c555:: with SMTP id s21mr1254899edr.151.1568968343166; Fri, 20 Sep 2019 01:32:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1568968343; cv=none; d=google.com; s=arc-20160816; b=xibocVxXXx/66tb20/Xdo/EINCzhSEaMdd4yena+wtQfJlwzR7RmuKwcnlhTy0CGQM zQKbG3w5on4PdtQS8xwnnHj5pzW9KsOnn37uz3epl64uP/ix2geai9EJQX/rrvzZgZM2 mlXqgig4G+V5ESnBiSysiF4n/WqJpRkEKxBO+J6gGFisA+xiuxC0SuFN2//RuoVHBhSy oZB39yZso4nrX9PK8/C+r/FPZHw+NK2oDbvmIkSYxNTUOyDpdyu0i0ce16HLjGicImtk O/7tFGnMJ/yoIDrEWKqP41qh7lWoaFbw0DhgtdF4V7z+roEWTg9yISzKkVnS6DnBUwTR B4gA== 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=hlmn8gLOWLOasA6ZQrXkuhYeRWsXkQmMRbMtBOVLoPY=; b=ttT+NzKJ6mwKoecL1PoAMvAi0LWEz2dUMcwPEVNgfwo4/ASNQxgkzuEx4+5ytMGzqw Z0QcnQRvR8UXQtjzBMGLGsSa2e7lqRn7HTFeXQ3yb9n4QhwNPuBOishp62vcINdtsvR8 gIbZpGh+Y4ONhp3J9AB35Wy4h19JfF8uLnpgO9cQoHItSMNksGzqrFw+MS3o4hv/HPDh C5qfV6TzFlOJAYLCxlj/+GOnGvb+McOlKE58LmNEaBA0cBU+FuOLz4I7RvYmjZIzdpIP +vleYdOMHikUUKHfOkS04lYqQXQCbE5nxtiBvhvBCOQP5Gib2dCP1h5nKWvPKN4KIaKN IEbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=0zQEratF; 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 d25si875013edv.319.2019.09.20.01.32.00; Fri, 20 Sep 2019 01:32:23 -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=0zQEratF; 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 S2393342AbfISWIG (ORCPT + 99 others); Thu, 19 Sep 2019 18:08:06 -0400 Received: from mail.kernel.org ([198.145.29.99]:45872 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2391660AbfISWIE (ORCPT ); Thu, 19 Sep 2019 18:08:04 -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 7F6DE21928; Thu, 19 Sep 2019 22:08:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1568930884; bh=yGI1xP+bnWmpPdOxglMAvXyH9rG4SIEjXhVMxpsQQiY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=0zQEratFODc8QSKLe6dBCVoJyvJsmdzyitd/9eDbh3H50fl+hye8byudx7hAvbQDB GKZ+LU/hRnOfl+LJrgS/yoLS3kLuEvq9ImiVLkQ5WFkWZLQdxASQisnhwyunDolnpb AqW2hj/cZBWTEacFMuLsNRus1jzfGPSw/yltEaFo= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Trond Myklebust , Sasha Levin Subject: [PATCH 5.2 050/124] NFSv4: Fix return values for nfs4_file_open() Date: Fri, 20 Sep 2019 00:02:18 +0200 Message-Id: <20190919214820.824649410@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20190919214819.198419517@linuxfoundation.org> References: <20190919214819.198419517@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 52dbd17e401ed..336643b821880 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