Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp7156244ybi; Mon, 8 Jul 2019 15:47:12 -0700 (PDT) X-Google-Smtp-Source: APXvYqyHWBfpjfe7/WoYG0fierFAvhR3O88IF4heCt87IpeYggjmeS+6RGFndY3Z/nwc/aL4ly3m X-Received: by 2002:a63:480a:: with SMTP id v10mr26631851pga.60.1562626032080; Mon, 08 Jul 2019 15:47:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1562626032; cv=none; d=google.com; s=arc-20160816; b=erEEuq1Dzn4NcQ56yWkCqXbpWlT5XYaYNzelqynTpaECRmvxa2VmwqV/ZRnT45LtJo SjhWZKNcDgXOKC2tFZeL2DK/JubLTfyYZBSKxGvB4p/Sz4u0936rBPw+no+ZMQjdpTgQ JiX6m36NjBi3RkbMiQZIjXx52GkB8139W2QhPqr4kZkSjoGMoYVgK9EIAiyY116dSHvj OjCZjfsW/3Ukv7pYyfKZ8mfuFttan6D6DJ7nRdoG5+C7rhNIo/Todcf035nixFXPSCsv yecv8E+OnBL+QjGqnhQQyAOa5G7EPCYfB6qbFjnhnDJU10yziSgKQDduAtTWY3sylpU/ DGEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=NMgsPwcgWqY799nLZlYuCre0/XwCSngAA3yPJe7nzXA=; b=RR2S0buXiNgioPAokT6bEXQTFo9NiuDDLqsEb29RVQBdcGaV9W/WdGam50x9XcxEE4 sy7l5nZYuRAAyvU0DvxdI33dZN4EjLZX3yMkPlpufCsVB+oUf+vkhfE41NZnvIynANKy SzvexiPGbBjQpkXbAJA2fbRQ6G1KRoCA4Ws2sCFqxRQTX0X4USz+PxWn0ICxMLnk2gk/ 97tlrKsYrl223I+3yXCSv/gLGGswf3MMJ7DsUfrhgfwJuDKjzuWd6bTiiXU8CKUH6Vs3 ZenvzfVE7yCHktkiptJyYzQYfHaTLYQvbJ6rSViSKnF9AcBKI/MmHH+SytcbAQSH9kf9 i3TQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=pZa+Frrh; spf=pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t23si685861pjw.56.2019.07.08.15.46.58; Mon, 08 Jul 2019 15:47:12 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-nfs-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=@gmail.com header.s=20161025 header.b=pZa+Frrh; spf=pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2391660AbfGHTYt (ORCPT + 99 others); Mon, 8 Jul 2019 15:24:49 -0400 Received: from mail-io1-f66.google.com ([209.85.166.66]:43331 "EHLO mail-io1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2391658AbfGHTYt (ORCPT ); Mon, 8 Jul 2019 15:24:49 -0400 Received: by mail-io1-f66.google.com with SMTP id k20so37809755ios.10 for ; Mon, 08 Jul 2019 12:24:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=NMgsPwcgWqY799nLZlYuCre0/XwCSngAA3yPJe7nzXA=; b=pZa+FrrhJrg7gebnCnTwMs8MW/J/u+rhUjmZjQ5sJ7mNRxCOjetNm8qaxwBkqsQoBc ZacHDmZkX2qxT3JKk1DU/uU9a0JHh+nBIUv4wy3udt0QvOLyBOFKtK9DJ19yCtAC7Ld4 wbielMxGqYc5Zxj+aGaGzZN6bcqUAYg1IaQDpxzTOInjkBCItP77CJlbU4er4VKNsBeo RJVVXBYycO4T87r9EnJqIqJtN67EzK4USYzUo+1TZEVUroxlFoKccqh9l5TmmOu/EgL7 T+BQ4eqY5THDoNud/7Ada8/qAEd2YQxaltW4E56cL2F7d/sIOr1o1LhL1EICkjTRm/ck IOVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=NMgsPwcgWqY799nLZlYuCre0/XwCSngAA3yPJe7nzXA=; b=YZgrhU0A+96nPi6oqDujwd6cN6HlkBhTZ8gkxVDWtDpybwdD6xs3GPQlWsyBkc2/TF e/bg4JmEU/GgMrP/QbAUuFhpGFUJ1FTs17G/W8itsWeesAHgpR4Sf37ynTx21sawo6qZ XUqDWsFXbvLz3o6weCrhLtg9b3j2HOj8tlyq7w8WmQB95VuCBGZ92pj9/7vMitvBAvWm Jg7wrzgD0u0ZNCY+VAn3F9ap0AerDsAl4bGrwGXdWWe1YkBDFCWz6ql9Csd3ymUaFe80 Sw/s/IdBkeUifrO0ggqtmU3pZeBtb6lyUyc89tuqzTns3lLTTQAnND78n4Otr+v55HLT c4YQ== X-Gm-Message-State: APjAAAWMDau/A6LpWB8XiotSnytH8NXQmzSw3cITnQ3y15HNpaU9lcNE AefHJrSQVI6CG874r65BOPE= X-Received: by 2002:a05:6602:2256:: with SMTP id o22mr19862457ioo.95.1562613888216; Mon, 08 Jul 2019 12:24:48 -0700 (PDT) Received: from Olgas-MBP-201.attlocal.net (172-10-226-31.lightspeed.livnmi.sbcglobal.net. [172.10.226.31]) by smtp.gmail.com with ESMTPSA id n17sm17026554iog.63.2019.07.08.12.24.47 (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 08 Jul 2019 12:24:47 -0700 (PDT) From: Olga Kornievskaia To: trond.myklebust@hammerspace.com, anna.schumaker@netapp.com Cc: linux-nfs@vger.kernel.org Subject: [PATCH v10 06/12] NFS: for "inter" copy treat ESTALE as ENOTSUPP Date: Mon, 8 Jul 2019 15:24:38 -0400 Message-Id: <20190708192444.12664-7-olga.kornievskaia@gmail.com> X-Mailer: git-send-email 2.10.1 (Apple Git-78) In-Reply-To: <20190708192444.12664-1-olga.kornievskaia@gmail.com> References: <20190708192444.12664-1-olga.kornievskaia@gmail.com> Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org From: Olga Kornievskaia If the client sends an "inter" copy to the destination server but it only supports "intra" copy, it can return ESTALE (since it doesn't know anything about the file handle from the other server and does not recognize the special case of "inter" copy). Translate this error as ENOTSUPP and also send OFFLOAD_CANCEL to the source server so that it can clean up state. Signed-off-by: Olga Kornievskaia --- fs/nfs/nfs42proc.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/fs/nfs/nfs42proc.c b/fs/nfs/nfs42proc.c index e34ade844737..6ed5a16dc511 100644 --- a/fs/nfs/nfs42proc.c +++ b/fs/nfs/nfs42proc.c @@ -391,6 +391,11 @@ ssize_t nfs42_proc_copy(struct file *src, loff_t pos_src, args.sync = true; dst_exception.retry = 1; continue; + } else if (err == -ESTALE && + !nfs42_files_from_same_server(src, dst)) { + nfs42_do_offload_cancel_async(src, &args.src_stateid); + err = -EOPNOTSUPP; + break; } err2 = nfs4_handle_exception(server, err, &src_exception); -- 2.18.1