Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp1606879ybk; Thu, 14 May 2020 13:13:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy6n0uKzzfEFJUc7c2RI8ghM8WngH9JWhJymm6542Jh4SEpVC6BRpkJw9ifXXx15k0ndBVE X-Received: by 2002:a17:906:a88c:: with SMTP id ha12mr5693686ejb.220.1589487223984; Thu, 14 May 2020 13:13:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589487223; cv=none; d=google.com; s=arc-20160816; b=Qoae8BC0hBOBhNAovPylR0UoeYDx3qELAds7dS67uuumwsNBFIf3CQAykyKE0gCLj4 ISYd9f1FFLqfUGYNJONo18n5rOyb9bgvUE+Jq+1QFX7uxvUCV5xCvio9ZE6YIH0aAKpk 2CubeYTOfjTmxWdtN/q/Z7eQnV+RvPnLvXe8lIaJJWOk9gLlTghC5xI6WDajjfDh0KKs zbyq8b5arwppPYr7A3mQQGfR4t6U1umWuAOY0Bi9ug8orfehR+OVEDAnM8XaDOiKrix2 V0O1Jn19gd9KiNXVYF9k7rG+upKB35HMrr7aWe0OJ3dqIOgsd5eOaK7gt3oP6m8Bvq9v xMgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=nZPKSA7PRBIqet/oO3uGxcTf9PLhYGmw6zflyB+UGCQ=; b=umQiyjXgVBy+lcCmRm/ZyZYZZJhidksdZfLXW88/jWXZ0jDDhjYuuCxuU4TSaKw/br hKwbveEVUQUY23VTwipVSr6CKonnMuoOw6aS04Dl5Rl/NQOm1Irrg5+IQpvmdbbEBIqN C93VR6gJy+wO4xBM08uS+E23BIEep0qV32wl6GOn2rdqo28fB5A0N53CYQz7IyXdi1qD LSy3AwRz5geG0tqwB1MzvedqlBLEmBmwZQH/6V3N3zE8wIJ70K8IVZUPc68nK4rdCKBh A9ZZMppAxf+s1BuzZ1CzZOreC5BiJPofQYq0C5P2ytDNF2MGTdGs/i6q5DbIkZneLwmo QI+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=LjUioybi; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 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. [23.128.96.18]) by mx.google.com with ESMTP id v26si1187917eda.549.2020.05.14.13.13.17; Thu, 14 May 2020 13:13:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=LjUioybi; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 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 S1726135AbgENUJL (ORCPT + 99 others); Thu, 14 May 2020 16:09:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60478 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726128AbgENUJL (ORCPT ); Thu, 14 May 2020 16:09:11 -0400 Received: from mail-qk1-x743.google.com (mail-qk1-x743.google.com [IPv6:2607:f8b0:4864:20::743]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 05C18C061A0C for ; Thu, 14 May 2020 13:09:11 -0700 (PDT) Received: by mail-qk1-x743.google.com with SMTP id g185so195198qke.7 for ; Thu, 14 May 2020 13:09:10 -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; bh=nZPKSA7PRBIqet/oO3uGxcTf9PLhYGmw6zflyB+UGCQ=; b=LjUioybip40yEtCvMG5B6DZk01gMNT4ZJJRULKpcweeETY5nTEnOCrH9jAOTI38Mmp 8eXPW008iNGAaJFATNMO8WGMTytJoGvCKvLwGSOTGvTqOE7+nvZL0GM+Gw/iVFoN/rQO ArWBIAL1HGr6L/D864pdV/hqS4lPUlyGzshgJKY9LlnlPcxF0Atq45xPb5y4i5TMfF51 +6nxINvl05vXWOdVyqpTAohXOL2gxnAZXm1BkTqiDF3VtdU77KYRUGbZWxyPV3otfKkq IWm7kpJKC+JahqVLA4p0Ds3JJtOhXoWq1cWsWrf3NPA5ydPxICbaAQwr/9vIUvTYhbzT Ilhw== 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; bh=nZPKSA7PRBIqet/oO3uGxcTf9PLhYGmw6zflyB+UGCQ=; b=MC7o0TuAE3mMbPM+YsRC4vQbibrv39JzRERyhfxEHePS3iS4grupUPeV2z4CPDeNxV 8Yq7LqP/jNw/EB6nnpHS3QzJgBUq4SEGoMJnrQxbCDHL0aonMEYX6xOlfQ1X4OUZvixV K3c87O5ZbANSrBVwlAV3uyvY/fca/u0CDl7pXO1MZazBDBXM+MEMtTWsU0acmdeeYJy2 Iv11UId/BHLQ+0JOERWKMccUjVeju+luMx1rvYpqXEr5OrwQSR6Sbg/qf7SGyKcKLe1i MRYxeiY4kzWxF9QNtJFJeglcPDEkE7Rjd4qgp/Y1q0KXUqwQA4SseVCn97nkF99PbFZb eNhg== X-Gm-Message-State: AOAM533rhWeE5CebuYHAuITUf3lw28KoQyFQsskqvpnq46qryscLLpOP Be+Z3zDVe9+PDY6NWs7NeG6UOdYL X-Received: by 2002:a05:620a:1455:: with SMTP id i21mr93158qkl.124.1589486949883; Thu, 14 May 2020 13:09:09 -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 o136sm3074318qke.78.2020.05.14.13.09.08 (version=TLS1 cipher=AES128-SHA bits=128/128); Thu, 14 May 2020 13:09:08 -0700 (PDT) From: Olga Kornievskaia To: trond.myklebust@hammerspace.com, anna.schumaker@netapp.com Cc: linux-nfs@vger.kernel.org Subject: [PATCH 1/1] NFSv3: fix rpc receive buffer size for MOUNT call Date: Thu, 14 May 2020 16:09:40 -0400 Message-Id: <20200514200940.51452-1-olga.kornievskaia@gmail.com> X-Mailer: git-send-email 2.10.1 (Apple Git-78) Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org Prior to commit e3d3ab64dd66 ("SUNRPC: Use au_rslack when computing reply buffer size"), there was enough slack in the reply buffer to commodate filehandles of size 60bytes. However, the real problem was that the reply buffer size for the MOUNT operation was not correctly calculated. Received buffer size used the filehandle size for NFSv2 (32bytes) which is much smaller than the allowed filehandle size for the v3 mounts. Fix the reply buffer size (decode arguments size) for the MNT command. Fixes: e3d3ab64dd66 ("SUNRPC: Use au_rslack when computing reply buffer size") Signed-off-by: Olga Kornievskaia --- fs/nfs/mount_clnt.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/nfs/mount_clnt.c b/fs/nfs/mount_clnt.c index 35c8cb2..dda5c3e 100644 --- a/fs/nfs/mount_clnt.c +++ b/fs/nfs/mount_clnt.c @@ -30,6 +30,7 @@ #define encode_dirpath_sz (1 + XDR_QUADLEN(MNTPATHLEN)) #define MNT_status_sz (1) #define MNT_fhandle_sz XDR_QUADLEN(NFS2_FHSIZE) +#define MNT_fhandlev3_sz XDR_QUADLEN(NFS3_FHSIZE) #define MNT_authflav3_sz (1 + NFS_MAX_SECFLAVORS) /* @@ -37,7 +38,7 @@ */ #define MNT_enc_dirpath_sz encode_dirpath_sz #define MNT_dec_mountres_sz (MNT_status_sz + MNT_fhandle_sz) -#define MNT_dec_mountres3_sz (MNT_status_sz + MNT_fhandle_sz + \ +#define MNT_dec_mountres3_sz (MNT_status_sz + MNT_fhandlev3_sz + \ MNT_authflav3_sz) /* -- 1.8.3.1