Re: [nfsv4] handling GETATTR vs. fh with outstanding write delegation

Chuck Lever III <chuck.lever@oracle.com> Thu, 25 May 2023 13:45 UTC

Return-Path: <chuck.lever@oracle.com>
X-Original-To: nfsv4@ietfa.amsl.com
Delivered-To: nfsv4@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2111AC16B5AE for <nfsv4@ietfa.amsl.com>; Thu, 25 May 2023 06:45:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.092
X-Spam-Level:
X-Spam-Status: No, score=-7.092 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=oracle.com header.b="FRBi91hn"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.b="NUotx7yf"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id GppWpGyO7DXF for <nfsv4@ietfa.amsl.com>; Thu, 25 May 2023 06:45:36 -0700 (PDT)
Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4118FC169528 for <nfsv4@ietf.org>; Thu, 25 May 2023 06:45:35 -0700 (PDT)
Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 34PDdhtU011615; Thu, 25 May 2023 13:45:33 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=zn/vIFjzZR9GiN1siCVynjs25IcMfOoJtqRYtdWh8pY=; b=FRBi91hneK+U4meui8Kk2Azj1hqZbKlMxXH1sGo2gyeqWhLiYiaWDqUEHJ28zzkYi2yV 7nyS2auiAWHgjdKqfwqxVilgJcDW3NRl5RZSEM0c5kFHcPBUlpRTSQ5iAq4osIEJoxiM DD+C/mVlPKx/LH21fYCKMWPrkWPmaTTHHqaX6jd4QhFg67TlhUz7uGECbp4EVaOS9V66 Ikk+/sSTXPlyZOYtGaSi0vIFYQ+qeqZhLzS8QjCY2f/WiWn65ZTyiE8OhiLmxm/0RAgM Mfn9T0wvVS92+nmEFKhYnjXmD0PzMhLPwM9MSjmbP/eNKdnsSq406cF4kdSGDLUq7JeU Yw==
Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3qt8rc00fu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 May 2023 13:45:32 +0000
Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 34PDXeTY023774; Thu, 25 May 2023 13:45:32 GMT
Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2104.outbound.protection.outlook.com [104.47.55.104]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3qqk8x6abx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 May 2023 13:45:32 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Rz0VWQz2pFQo3sclWwbu4p1VDmsGxSP22yHrQ3ZgI0qMaxFsPsP9ZPsbLLbE3H+nf6Zq//GhmCSC/JrDSq6FP8WBx2GpoULM3Utq7ZdTruJnKweg7UIfuaALBohJRGY3NsPTRQn7rtApdOBlIXj9CO1NHI/hFtpdPSiIKQts9iPKGpKhkw2/nUSg54eH7M7A6g/DSzfMEX5YXckzfD9FWUHS0ki+jmikn/Ott1T4ny2xVhqQAO3rg2FafWERsw7qeJrsuJ8iG3TCbJTD1gzKbgQ3F7qT9EXJp5caKOf8UK85KEyNccFwsmc/re9uU/qoc3/ORybTTrF+ZK4DN1eIIw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zn/vIFjzZR9GiN1siCVynjs25IcMfOoJtqRYtdWh8pY=; b=YMAOkTYQQ4ImGxbFBCvJTBBl8MUJYd3oB8vrTepoikq5RKxVG1JixLZVsPXqdwI6qScPYCvn941STR36S4gtv2BZU6uFDASSxOaKi3hFw24PqXFAJM+dOdt12cakJvoVjIZaI5GIi4b2FF7A4xcbY/1nQoVTWoznkaMfOCrCRdKZIoY/Y9D7EjWfRgpI5SSDGewwoN96QHE4NGSMY5dt9jxs+IY5Psj9QNFPUIs2nDA23Far2FYDdRjmeQ/jMVpt+4A4pZTpbHII4ygtcVA8ERlcJN68L/hOsvQUcGXnSLY4mqM0dvL3fd/BQCiEDCS6a9mN0+mp2te1g/grpVCMqQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zn/vIFjzZR9GiN1siCVynjs25IcMfOoJtqRYtdWh8pY=; b=NUotx7yffgFTGXFTZ/UcWBgNBt76hRa/Lv7jpkywaYvpNZv6bDoPYeJg/SaUe8hqI55hGomFpYFIWms5HMPhALdlAvAeaHoB1Z5j9KStn+iaH0ueq1zsNEbl2ogZtOBWjGJgul+XSrK+yy9wq1mdZ/ZTECQJXjVuUQeFShbsE+M=
Received: from BN0PR10MB5128.namprd10.prod.outlook.com (2603:10b6:408:117::24) by BN0PR10MB5320.namprd10.prod.outlook.com (2603:10b6:408:12a::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.17; Thu, 25 May 2023 13:45:29 +0000
Received: from BN0PR10MB5128.namprd10.prod.outlook.com ([fe80::ecbd:fc46:2528:36db]) by BN0PR10MB5128.namprd10.prod.outlook.com ([fe80::ecbd:fc46:2528:36db%5]) with mapi id 15.20.6433.016; Thu, 25 May 2023 13:45:29 +0000
From: Chuck Lever III <chuck.lever@oracle.com>
To: Jeff Layton <jlayton@kernel.org>
CC: NFSv4 <nfsv4@ietf.org>, Dai Ngo <dai.ngo@oracle.com>, Olga Kornievskaia <kolga@netapp.com>, Trond Myklebust <trondmy@hammerspace.com>
Thread-Topic: handling GETATTR vs. fh with outstanding write delegation
Thread-Index: AQHZjv6UobuBZAnJuku3e/dAo3jGZ69rAEsA
Date: Thu, 25 May 2023 13:45:29 +0000
Message-ID: <D5BD1191-C395-4ACF-BFC8-32A2A1862459@oracle.com>
References: <c69e80e002d12dbcda9491ad29275022f205cd3e.camel@kernel.org>
In-Reply-To: <c69e80e002d12dbcda9491ad29275022f205cd3e.camel@kernel.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.500.231)
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: BN0PR10MB5128:EE_|BN0PR10MB5320:EE_
x-ms-office365-filtering-correlation-id: 4ca87475-feac-46a0-eabc-08db5d264d8a
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: MP8xQJyJiK69CrVtp94opUxEa7hw//weYWa4QP+GDs5UMliV3TbC5IeKi8HeB8fSDNp7qPOoBxfUnr7TvAYGTU8LCk9HDbTAs3JNEReVRpzqL9oDZgBtLWBwBSaKcM2znPvi6alAYHKPwpDP+UkXujEQ9yi6zHeTqdFy9mKwSdnFhg+iSQakYEkr2v73je+YFnKZoy0KAKNjCblbBdvSqFIQF/7yoUrc57PzILjrYuMgJcSyaO+Cu9TFRB2JmhhPQ2yJmx3usL6r4Oq8AEE8FPTR3JOdALwyTP8LKg7ZhWefpBy5wkfBc2xI4k2RUYl9mpcJppazIVWCi+LIgnG1WyM//CMJ+tmEvNXmc8JzsH1ttdfMjNaln9DzBTkVS+2+mdBqcHltXHM2Pm6uiIaUdnmWmgXT17AUKHvMVY9PTZlVwG1FbMI8VXcIVcrszirAieY1g0iTQC4reQpp1+LpDWC2JavP/OJj3xgg5Ieg+bsIgHhXTsqqjQoDkEXjWGZm8N3dboAeS57Amyjc6Rin5GJdZWUQE2sxxw4zrLO5GC0scu2YM41v/3o18SyG8qqYnKfqVI57FWER4EUusTJIuJmgfJjw87kU47ICirLlG3go5oBXd1nz9Rxkr+pSABXxAPiw/060wQXU1Mbw3ArPD1HuGhO9gk4B1zaxDrwr7Ms=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN0PR10MB5128.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(376002)(396003)(346002)(366004)(136003)(39860400002)(451199021)(41300700001)(6486002)(2616005)(71200400001)(316002)(38070700005)(8936002)(5660300002)(38100700002)(36756003)(8676002)(122000001)(2906002)(86362001)(966005)(186003)(33656002)(26005)(6506007)(6512007)(53546011)(4326008)(6916009)(76116006)(66556008)(66476007)(66446008)(66946007)(91956017)(64756008)(478600001)(54906003)(45980500001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: BEdqP8lIrhNAs09Q2RvBwFgGHXTir9lTu08v+wIEXffQiUCmHd5W5+hr5RsvO2lpgPS92BrkjN7vPnytgYM7xNXoXTg7g657sqErFezD//dS03cewQ2G/XIYvQC8+ASg1MjvWED35YZHMF6/wpxwUtC6+24uoB9rO5T6Or2GbqQR4QLCj80Ej5oo3hR0aBBSaCBDnczpC+DPxig+9+C6Eao6uJnejHwA2/Yj+wplh7sHTHAjdOFOW9J6VbMSxOF2eqdtfnF6KUS1CX7KPq5w+XWb1ku3+XDhSzNZMb6EmpXf/31TIqAUD9dk/APKTwiQOoobpnxtvshWjvN6nNkBmm6GbXWPDo791AnAXp3UG8ohwroHt7HhIbq11EgdqR4t3QI4ZSRHL0eEIFNu3Q2sQzf+xMeix+sJL5TBRr8L98P41CPmn5x9uUjyQw5v2CHhqOgJgsp03BRhpXiqiHjGAPQCTzAYjYLF/VBNHg8eFLFGHHBC/4tP0QvnCxXMSJFTzMTMgvGClQlk8fvwFVrCIsl8ubCzXOtgsM6Fu6Gju8uUKMyexj4xH7YGdfcjduk9crQF4jXYn/TsuGjyAyM7ZGKTHOstOArBKBuYQCSq2KqSvYvFgK3/BxHzs6tPN+s0TYckxLsAdDrLNHka3bjbw9AtLjWfemQDDbZULmtstjun8/zxK2uJtD/SAqlnl40yfI+jxoSKeOTCJdHGzCmKfADGLZNuEA80vyx2t5TtQXSXjcT+Jh91B6R9JSYaVvzcsAHt4UgiKeEPFwFgNLy+ceWQUnwIeaTDDND9ceb5PBly3Zq8L2zpepcg8VA8tisK+TtUppWuJIq7Ymgk8icLhi1XWJtcPudcZO0NLQDnQqMAnzQTuaaaZJNLFralds9SdHJsq6Z79AL7lyAsiwKdPOno5y62fEksrDDY0JA6KaPWNCoa++6b+2f0gtTfsFYASTY79gXnL0zboxI+ed53JW7sYt9TqBS0DPkRJpv9wj6Ymns3ZrnuuuL/bB2RckJ+U5VYep26uy8tQYHM+2bdOtqMHUjoLC3bsxTnwpkW3dyUWU564QWBxg8Zr24/vjRRZ/OGREsk+cYOR9q0w8GLOCwQEqR4RGwKvtKKe5iVRfqw9wZQ3oNJH34sjQfga3P0Ek6RJBYBu3R2i893C0xgtMG/DV4rA82nxroeyTx3y/X/u5GiSwXKNNkEGlv2RuGlhQemDS0O+MD49YU8QkY/kL2HUiAa+QKfM9rgXZz5S8K2pRmjeHFjyWgbEdNZ0LrheAwgfZI3+zBSzYcnytAR88gKJogZpDohKlvikkXP0/V9TUkkLD7HAK6M26Cdxww5T4MnNEEkRO5A2rE7HiabmK70lQrTWKG35YWRHNu+nkZYfjp4Jr9cWZ87N+tL/11Ewg613svQA9M9B+JoEgq3HoYTAeFKZcfQ4czC8u7E141W/1/nQ39zpt5qF0vCFBtwmt2U3zwABm7UzxvG3capcklE7BTZQurHT3pn8XOk9WdWWCDWjjx0tUO1ncyNrnvW923RQxkcxG3MNS3rY7opp1Qj9nZJFxyLmKqiqsSgyfoFgzZfy6VVQ1N2ijkhTnGMXSifJU9lK/LOLo2IfE7xCQ==
Content-Type: text/plain; charset="us-ascii"
Content-ID: <5CAD317279B3C043A620F3E15D0D45CD@namprd10.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: GfhW8PaLWohe0ttx2ZLLVXsxjz1QHQV1bEGfsll+vuJGqXCfyaxNNW/rCygW264n051bjY5HXqOgJzhlFdIThftLP7Qp99l4FIkvORQF6B+KiSviqAUPd1I9JPj3+I+6f9xdoVLZytMVy15l51UTxGr9ZZWhqqHscMwlorLsM9Oys/IpdLxVBSpLb7LJCHFL9Ya9gGPi+zaEcCghUe/VEh6ga6BLO8DSWotbvhpf8Bf6k+uafVh8CrG3Iy5VnMF3ahJb+3lGdGTwkz3u3feR/RqQh0+8btE4VDoA5HiZSCl2vj8hF64bleSRm364X4JP/7rBfZDTVDtN8y4rfIo69/v/7o+lAxwSGUZ6GwYYJ43tyvsRoT+V5MQRt2riZeGHZ7OwPBIlyCRzXt/tWK4Dr4yjl2H47rRt1K3laAe8C+1+0TfSTi5a3gKxvoR19yXzxATuc6dEiJF5YynouzDMFENjtW0M///NIEuetsbVVn2ck+ORv0WF2quE09PC6KBd2OXeOS4+dlnc+q2svOXdfHDw0iolURasqXtIt8iMqri7Y7kJKSW5HPNjaEvbpuJ7DKbvz3Udi1H5WBAZpE6Wxr6OIwphDjdWpYvKmEdECmt+GfopvF6F8bz56n+aYobgA9Xi+iVtgAJocR7sA2U3RzM4uDO9hqxOyGQl9I8oJih8GgV1WnzX12kgSQsSocRtYGRVQi3ErL6XYw+PEGN0Kru8cnDT6s7br1mX32vk7Bfw225wU2FuBywm5Mx5m7isaYvhlo7reYIDCSS7t6oivM8EGDKMi1i/QOs81mp2JvjzZcdphFJGWA6CwfwPa0aidll5ZQ3GHOkf3dQPQtBDiQ==
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: BN0PR10MB5128.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ca87475-feac-46a0-eabc-08db5d264d8a
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 May 2023 13:45:29.3911 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: EOdl1VUOekoI2Ftppyl37ziuBypnwxVYhgETpfGBHDqrcB4sGEtt484LKAHucf9091PY4MNmqpLIn1cQMaXD7Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5320
X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-05-25_07,2023-05-25_03,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 phishscore=0 mlxscore=0 mlxlogscore=999 bulkscore=0 malwarescore=0 suspectscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2304280000 definitions=main-2305250114
X-Proofpoint-GUID: OJb7Uj3KmTms94DjQ8VMt3JUUGIAkwqN
X-Proofpoint-ORIG-GUID: OJb7Uj3KmTms94DjQ8VMt3JUUGIAkwqN
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/kYSG7vYq6k0YJbRv521ucmsfaig>
Subject: Re: [nfsv4] handling GETATTR vs. fh with outstanding write delegation
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/nfsv4/>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 25 May 2023 13:45:37 -0000


> On May 25, 2023, at 7:46 AM, Jeff Layton <jlayton@kernel.org> wrote:
> 
> Dai has started (finally) implementing write delegations in the Linux
> kernel NFS server, and we've been looking to the spec for guidance.
> This section of RFC8881 has a long treatment on the use of CB_GETATTR:
> 
>    https://datatracker.ietf.org/doc/html/rfc8881#section-10.4.3
> 
> At the bottom, in particular, it says:
> 
>    It should be noted that the server is under no obligation to use
>    CB_GETATTR, and therefore the server MAY simply recall the
>    delegation to avoid its use.
> 
> However, at least one server implementor (Netapp) seems to ignore this.

"Ignore" is a strong word. IMHO other implementers interpret this
compliance statement perhaps differently than you did.


> The filer simply reports the info it has in response to a GETATTR
> without using CB_GETATTR and without recalling a delegation.

As a data point, the Solaris server implementation also does not
implement CB_GETATTR, nor does it send a CB_RECALL in this case.


> Given that the client can buffer up writes even when it doesn't have a
> write delegation, what's the rationale for requiring a tighter level of
> cache coherency just because there is a delegation outstanding?
> 
> Note that we have not yet implemented timestamp/attr delegations:
> 
>    https://datatracker.ietf.org/doc/draft-ietf-nfsv4-delstid/02/
> 
> Will we be any worse off if we were to also ignore this bit of the spec
> and allow GETATTRs without CB_GETATTR or CB_RECALL?
> -- 
> Jeff Layton <jlayton@kernel.org>

--
Chuck Lever