Received: by 2002:a05:6358:7058:b0:131:369:b2a3 with SMTP id 24csp1660538rwp; Thu, 13 Jul 2023 14:34:48 -0700 (PDT) X-Google-Smtp-Source: APBJJlEkmLBsh39xQ3arvNUmAs5bREOkUnKptNJi+YtNo3sddKOKkUxNdBzskBpLryqPHAD44hz/ X-Received: by 2002:a05:6402:74d:b0:51e:2d16:8473 with SMTP id p13-20020a056402074d00b0051e2d168473mr3482879edy.36.1689284087902; Thu, 13 Jul 2023 14:34:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689284087; cv=none; d=google.com; s=arc-20160816; b=mFxKQmBkMpG9unBgG9d13yhRp5SzGQNkmJVtkhNye2WlZ7/jJDIgskFsKl7vUYqoMP YHTco2F6moe6uAAloDjJrmInwDvVq9BS0Tk8DyLdBWhvI8n5eHdl46q249T+Y64zkGgC NWlBgSj4lZabfeXuf0AAPqJZ1gIxT2xQmde39csddRPzeCzPXbzhVYDH78LXGhGusxu9 Srjf6FBLy2J3slqmKxQ2il8jnU66zuDpPKMMue2eb+Nt1by56473mhxU32ebBGmX/usz vIP6eHxpz+0p8kz5FxV6vz5WSezWkL0toqN9Mc0jnX1uTTcPDbQnbFi3rEVhe4rfSTot IqTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=uE2YAXIfa27t8d7003nbDI5x+mHqZ1rdoLrWvEaqvXc=; fh=h95S39T+zjjKEpZcw84qQ2kfFvs+5lIQ78G1T2hJTmg=; b=XQLbjUgjCNklVvbUUCOZI99DQmHkRgUf14u6iVM+PJyaBHAxJgHTFJ5Z6xUw5JGtuW hsL5w9gcaamS1CyYlYV5x6uLzIZBI6zRSRKlJLTdfZS9j68asDJsSGBIeMYgnTd0EWtJ M2PlOb36nuP1HiM03UhytI5lmbgLsUHfzf1teJehAQO+JkJ6KBt/yd+TiDn8jMDodybC BIexn25PZpXuPWbCPAXKoiDwwlMnmHlkIcRc22QC+5aEuHL6lo9ZpyzLfihL5oLiTl84 mGlFjlM4kWTnX4DPjy3/3adDcQOw2dqdCJDJRmpkpcwvy+Pk+u8r2CYAw8g1CqsbN4GA InDw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b=nIPGEd03; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 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 out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id m17-20020aa7d351000000b0052061adfbb4si469017edr.80.2023.07.13.14.34.22; Thu, 13 Jul 2023 14:34:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b=nIPGEd03; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S229815AbjGMVcS (ORCPT + 99 others); Thu, 13 Jul 2023 17:32:18 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39866 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229580AbjGMVcR (ORCPT ); Thu, 13 Jul 2023 17:32:17 -0400 Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [IPv6:2a00:1450:4864:20::22c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B9AAC136 for ; Thu, 13 Jul 2023 14:32:16 -0700 (PDT) Received: by mail-lj1-x22c.google.com with SMTP id 38308e7fff4ca-2b6993ef4f2so3929791fa.0 for ; Thu, 13 Jul 2023 14:32:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1689283935; x=1689888735; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=uE2YAXIfa27t8d7003nbDI5x+mHqZ1rdoLrWvEaqvXc=; b=nIPGEd03LLV7GMzUiMMhCy7RP131bzn56OWsRdGDqFLjBkRmTfYRT6Xak1vxyGxFv4 T7jEsSFs0vagP/+dFXjVKoBt2FN7/NCm8S03VMDgCSQ4ICxYdAhueH7jOaqaYeiKYI2f 6M7dceUgDkl6KG7eEHWc2apYkJkOe7b8AH+WICIMSwGsrVvp5/EpeXxOJIIDrbOw9XKz /lvaKi2aa3T6kERiTC837/oyl7ZV0c8BofH14D+20RbXkXruzSmMX1fH15N/shfZxsxt owiDARWrWyFB3tM7EkBQYjafqhE/WtGQZPnAUyNasY5jjvHcaKxejfctHkBj9BoOsMcW vr2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689283935; x=1689888735; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uE2YAXIfa27t8d7003nbDI5x+mHqZ1rdoLrWvEaqvXc=; b=PYHtbLM5BKZw8zEXwnU24bXo5TatKI/056O9ARHmVTorsUBe7KOJuc8gZjlgyD6Agg 3M5aDC3fgQFAQBPMpa6DQTJlgBWmNClVVMIWKfxtlGzCg2N/Ud5Sw49MAl0IvG4p2eqf sIIyx0UQ55iCFBK1Q1lfabhiBuimLAianxIalTeT1tUxV5P5bRwkvAS9kERowWO1tuwo r7J1K7Cyb11kukY+9DlNF0RoX6yADZ4+Vzd03C2El+FrJLdWV2CWybmcNwl6RhCKJrEX aI18Z1VifN5PWrEzvcN0HfFpoqkmRhtLtavWY+iarce5Ycyvpd6IyqLPWDZCpVpkbATy EjcA== X-Gm-Message-State: ABy/qLaa7b6Anizvj4Tl0s77wLKuA/605lls9rX+h4Gvr+uqZFI6KuZZ BFqHTu4gGABdOKfvKfV0fN7oUx2eQWGfSwk3wvc= X-Received: by 2002:a2e:bc11:0:b0:2b7:40e4:8e2f with SMTP id b17-20020a2ebc11000000b002b740e48e2fmr2471463ljf.1.1689283934577; Thu, 13 Jul 2023 14:32:14 -0700 (PDT) MIME-Version: 1.0 References: <20230713195416.30414-1-olga.kornievskaia@gmail.com> <2C013A73-79B2-446E-885B-33EF05916CCA@redhat.com> In-Reply-To: <2C013A73-79B2-446E-885B-33EF05916CCA@redhat.com> From: Olga Kornievskaia Date: Thu, 13 Jul 2023 17:32:03 -0400 Message-ID: Subject: Re: [PATCH 1/1] NFSv4.1: fix zero value filehandle in post open getattr To: Benjamin Coddington Cc: trond.myklebust@hammerspace.com, anna.schumaker@netapp.com, linux-nfs@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org On Thu, Jul 13, 2023 at 5:16=E2=80=AFPM Benjamin Coddington wrote: > > On 13 Jul 2023, at 17:08, Benjamin Coddington wrote: > > > On 13 Jul 2023, at 15:54, Olga Kornievskaia wrote: > > > >> From: Olga Kornievskaia > >> > >> Currently, if the OPEN compound experiencing an error and needs to > >> get the file attributes separately, it will send a stand alone > >> GETATTR but it would use the filehandle from the results of > >> the OPEN compound. In case of the CLAIM_FH OPEN, nfs_openres's fh > >> is zero value. That generate a GETATTR that's sent with a zero > >> value filehandle, and results in the server returning an error. > >> > >> Instead, for the CLAIM_FH OPEN, take the filehandle that was used > >> in the PUTFH of the OPEN compound. > >> > >> Signed-off-by: Olga Kornievskaia > >> --- > >> fs/nfs/nfs4proc.c | 6 +++++- > >> 1 file changed, 5 insertions(+), 1 deletion(-) > >> > >> diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c > >> index 8edc610dc1d3..0b1b49f01c5b 100644 > >> --- a/fs/nfs/nfs4proc.c > >> +++ b/fs/nfs/nfs4proc.c > >> @@ -2703,8 +2703,12 @@ static int _nfs4_proc_open(struct nfs4_opendata= *data, > >> return status; > >> } > >> if (!(o_res->f_attr->valid & NFS_ATTR_FATTR)) { > >> + struct nfs_fh *fh =3D &o_res->fh; > >> + > >> nfs4_sequence_free_slot(&o_res->seq_res); > >> - nfs4_proc_getattr(server, &o_res->fh, o_res->f_attr, NULL= ); > >> + if (o_arg->claim =3D=3D NFS4_OPEN_CLAIM_FH) > >> + fh =3D NFS_FH(d_inode(data->dentry)); > >> + nfs4_proc_getattr(server, fh, o_res->f_attr, NULL); > >> } > >> return 0; > >> } > > > > Looks good, but why not just use o_arg->fh? Maybe also an opportunity > > to fix the whitespace damage a few lines before this hunk too. > > > > Reviewed-by: Benjamin Coddington > > .. and should we handle the other OPEN_CLAIM cases that use the filehandl= e > as well? I was pondering about that but I think the other OPEN CLAIM that use the FH directly are recovery opens. I'm not sure if they need this. > > Ben >