Received: by 2002:ab2:1689:0:b0:1f7:5705:b850 with SMTP id d9csp1434739lqa; Mon, 29 Apr 2024 08:22:00 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCUy3aoXDygH8n3MJSbTbcdNOYxP/UADWu/b8M/Iwc98tyYSDK+UoT+nYbFMm5Fj6BpUtIkMnkFFYSLlTUwAfLPsD7eAtRSdmmh0qYn41Q== X-Google-Smtp-Source: AGHT+IGu4fZsZD8STpUOtoQ3TiYQ6UgC093gMpDoAIyt9sLBJNXBDEmb1cTiTTofDCbVprGUaAzH X-Received: by 2002:a05:6902:548:b0:dda:c10b:1c6d with SMTP id z8-20020a056902054800b00ddac10b1c6dmr9930392ybs.51.1714404120073; Mon, 29 Apr 2024 08:22:00 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1714404120; cv=pass; d=google.com; s=arc-20160816; b=Tv+dvcGbNZvApXOHiRVtpCzKn5f2VM1VBEGK7DOlew+UtMTAvPnvU9b0j4VjpGzbYm HbeNlL88t9FA2eOtbfkakHXRAmrvGElb0D/+lksjfmufFw32+afdgRT73Il3dbSFSRZH MGjZAwLIAzqlfiOnK/96Ef1xJ0czpBVJHw6f03qoxgqmBDSeQDC4NqmjhtELpLoU+K6T kIGT/OjAcn5ZFTC0fcgcNysCA3jZRnLk4VLuOsCh/5nvqPozal2Wmyhg9rHe64gvbHsm ih/0n6yDQcJy/keBXqoguy9wD68/GuxfU0fkDSxQeol3aXTwZUFmfTHHTIslUbrrqDv5 +TCg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=OHOUCyS0unQ/wBpMJzmWhdyRrtw+ZE1LyTsjOSsQla8=; fh=enJLO2bjgtF62pspx5ljkzIyXGntjeeEElubrrV/VoA=; b=n1EkyKTBVl+1iP+v/vggHbL5ycL9zy/lvAlGm676xA4ptsaPHOw1BHWEsQoZkV2kAu 6Iwo2HobVZQPL51q02AsnLt9BXZIVgVeTs76BgGEnygkfebftclPAoqu4uP3jtSUFrNw U7qyGlfZDQh3PuD0rVmDPLhCGcnnlmzZsh0tUVVdYv+oSy3xS6dTMMNx0vB/ecQ0oSUj mxUcZEa2nslzfQZWL2eLyr3rHKl51VwhIIT2IJgdPvUl0fq/qU4ammNydjB1Xqf560zD SFIRWDzWKAXTTDSs9pLgxRTIfS6KW57HXBXa+ojMjh4hCdLks7eLK4HFivCREXWESCkO eDrw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=YD6BHOKw; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-nfs+bounces-3054-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-nfs+bounces-3054-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id a123-20020a1f6681000000b004d40b32e2c6si4079001vkc.139.2024.04.29.08.21.59 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 29 Apr 2024 08:22:00 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs+bounces-3054-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=YD6BHOKw; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-nfs+bounces-3054-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-nfs+bounces-3054-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id A87441C2085D for ; Mon, 29 Apr 2024 15:21:53 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 31BF981AA1; Mon, 29 Apr 2024 15:16:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="YD6BHOKw" X-Original-To: linux-nfs@vger.kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0D87580630 for ; Mon, 29 Apr 2024 15:16:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1714403814; cv=none; b=ZCkgVoCMiMbdI/wKa8RZOvNyTBkgIYGCG+cOQwZi2MNRgenytQlUVH5d/cBLd5xUV+SgMSXLoRuMwB7qJkGzB355HvZIdECgCdpY1v0QCDbSG/+3ID/DRwuItX0LHLqVVrUjQV3b1ZqA+63pMdMjzJJomBq2eIFGOsfgleliQZM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1714403814; c=relaxed/simple; bh=u+lcC7GhORAvQHVucnqhZJJoAfU0Selqktx68r53c9s=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=S+Be5vdBPq86RXYZ3ms+dKiKGXOmdFHBtnkny7elG0c0zgf2bVfdpyIvyg79XStiOx6PfqEs1vmbe3+gtu2pqpnO0rDDnT6EftWml7xmsdNvlQ9C/Mg9zsTM5cQU4JY+pOuCCUWPVjvEeralBrOVAKIbaGxp9awhvlt5VnWf/nU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=YD6BHOKw; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3214FC116B1; Mon, 29 Apr 2024 15:16:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1714403813; bh=u+lcC7GhORAvQHVucnqhZJJoAfU0Selqktx68r53c9s=; h=From:To:Cc:Subject:Date:From; b=YD6BHOKwfeMRx7Jv0HJo6H1DsYdXqXzL4wlGE6j+Ux7XgIjXJMwKn308mDLYBozxU seNGmma+wt3dXCb/LQaldw1dEUS11MAjfPxAspZxy7jeCY4pBrstd/sFmqd6FI0OGk 25/cp3/GGTphu66CcQm2Vc4iLwa7IyTn1ZwhYsxpENDAmWhyd96Tf7ePShr2yLEXM7 0eFYHXjauJqHx7lHR6MqDevxRRfS3q1Pj3Maf4IkGvXGIM4FONm4JyLfSvvlkla+qL kxYN995OKmNf+6g3y1T+d/OtbUvHgFxlOeZf5gTaqCudqq1tqIqiSIVddXjcR1afYa fcgyeFGcQNyYw== From: cel@kernel.org To: Olga Kornievskaia , Dai Ngo Cc: , Chuck Lever Subject: [RFC PATCH 0/4] NFSv4.2 OFFLOAD_STATUS for the Linux NFS client Date: Mon, 29 Apr 2024 11:16:33 -0400 Message-ID: <20240429151632.212571-6-cel@kernel.org> X-Mailer: git-send-email 2.44.0 Precedence: bulk X-Mailing-List: linux-nfs@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1159; i=chuck.lever@oracle.com; h=from:subject; bh=cNLTxDpwXihmQofUyKkFDjw6W67Su6KwkcOe83NBLSA=; b=owEBbQKS/ZANAwAIATNqszNvZn+XAcsmYgBmL7nQiABPucD3sQQOTaXGE5aNPa8EJJ7e1vr/O 6T6kOS8LFeJAjMEAAEIAB0WIQQosuWwEobfJDzyPv4zarMzb2Z/lwUCZi+50AAKCRAzarMzb2Z/ l9K7EAC3AbWvlBcMo/YaHggxPOVYeDfiBFdFuBicR+/Mir2V0lG+YNAOJMUuplQx7IoJDh0MWKH WtvNscX1f/yogJIx7A5fYhN5rlBUWd50dbK5JBKBYQuqtPy0bbAvYs33lo4R0XJqp51GlpD8vHc HkTOoiIwp64MRqUElTsZaizgtDBKYIuBCAKoT2pq3ZWpcaVUpCJD9QU1KNk4uC2SpQzz+e28DQe 223Ua8HhaPVdGl7pOQJ/OV4z++42rk6G4Q29c4ZsV8NSEeVQbbLKJuCOmQ/F9anAWmCqGjaqBZs +XU5xkWGkjv0byTPUnVvNIzcC+38k5+3TfLqLpQ66DrCtziQ5+915SMpkdMPciem4qkwY7UTDN7 +9q4bXK2y7AizotQrBdrUHatSmkh+LdvZfrwkfSUx6kJ+YNP3Hf8FbOhkgYjW8AebCULxH6NqGv 6ESXSRL6q6lOPZSCOinO4zOo/KJEpd04tsIDM9jyV1/zzAIQKtD1ddXNxYepzApbd5scy70gpfY fbYsZOkt2NfL2YwJaSvkih7lPr0YXi/lN52sKBAtMcPmr0zE1WpwFgvrfVUxP5KXMIxAmLTUTKa sadvPADuPRzBX7hGMwSDSjHS8AYygjY5kOy+xTmlSZV9cM4C2bamXR8O6NpWzgPmv4iqbKZKVbI 3hV0EPGmq8MknUg== X-Developer-Key: i=chuck.lever@oracle.com; a=openpgp; fpr=28B2E5B01286DF243CF23EFE336AB3336F667F97 Content-Transfer-Encoding: 8bit From: Chuck Lever Async COPY operations will wait indefinitely if the CB_OFFLOAD is lost. Fix this by using OFFLOAD_STATUS to periodically check the progress of the COPY. This is compile-tested only. Looking for review and testing. IMO the only controversial part is how OFFLOAD_STATUS will handle situations where the server is temporarily unreachable. Right now I've set RPC_TASK_SOFTCONN so the RPC is dropped immediately, and the COPY operation should simply go back to waiting another few seconds. Chuck Lever (4): NFS: Implement NFSv4.2's OFFLOAD_STATUS XDR NFS: Refactor trace_nfs4_offload_cancel NFS: Rename struct nfs4_offloadcancel_data NFS: Implement NFSv4.2's OFFLOAD_STATUS operation fs/nfs/nfs42proc.c | 114 +++++++++++++++++++++++++++++++++----- fs/nfs/nfs42xdr.c | 101 ++++++++++++++++++++++++++++++++- fs/nfs/nfs4trace.h | 11 +++- fs/nfs/nfs4xdr.c | 1 + include/linux/nfs4.h | 1 + include/linux/nfs_fs_sb.h | 1 + include/linux/nfs_xdr.h | 1 + 7 files changed, 215 insertions(+), 15 deletions(-) base-commit: e67572cd2204894179d89bd7b984072f19313b03 -- 2.44.0