Re: [nfsv4] [Errata Rejected] RFC5661 (5212)

Alice Russo <arusso@amsl.com> Fri, 04 September 2020 21:00 UTC

Return-Path: <arusso@amsl.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 6424F3A102D; Fri, 4 Sep 2020 14:00:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id z388D87feRpG; Fri, 4 Sep 2020 14:00:05 -0700 (PDT)
Received: from mail.amsl.com (c8a.amsl.com [4.31.198.40]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 413ED3A0D12; Fri, 4 Sep 2020 14:00:05 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by c8a.amsl.com (Postfix) with ESMTP id BC5B43C24AF; Fri, 4 Sep 2020 13:59:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
Received: from c8a.amsl.com ([127.0.0.1]) by localhost (c8a.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YYXFFKWfNyaH; Fri, 4 Sep 2020 13:59:49 -0700 (PDT)
Received: from [IPv6:2601:602:8501:8b10:6cfd:c7ab:e2cb:a5d8] (unknown [IPv6:2601:602:8501:8b10:6cfd:c7ab:e2cb:a5d8]) by c8a.amsl.com (Postfix) with ESMTPSA id 46A1B3C24AE; Fri, 4 Sep 2020 13:59:49 -0700 (PDT)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
From: Alice Russo <arusso@amsl.com>
In-Reply-To: <MN2PR06MB559720AE5B2EB67CFD9AFFC4E12C0@MN2PR06MB5597.namprd06.prod.outlook.com>
Date: Fri, 04 Sep 2020 13:59:56 -0700
Cc: "loghyr@primarydata.com" <loghyr@primarydata.com>, "shepler@storspeed.com" <shepler@storspeed.com>, "mike@eisler.com" <mike@eisler.com>, "magnus.westerlund@ericsson.com" <magnus.westerlund@ericsson.com>, "iesg@ietf.org" <iesg@ietf.org>, "nfsv4@ietf.org" <nfsv4@ietf.org>, RFC Editor <rfc-editor@rfc-editor.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <8C79ECB1-D63D-4D8B-84AB-AC3C4EC974A9@amsl.com>
References: <20200903112436.4E681F40780@rfc-editor.org> <MN2PR06MB559720AE5B2EB67CFD9AFFC4E12C0@MN2PR06MB5597.namprd06.prod.outlook.com>
To: "Noveck, David" <David.Noveck@netapp.com>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/ocL4aFNQMWWRXVlNNaAmKQgTGFA>
Subject: Re: [nfsv4] [Errata Rejected] RFC5661 (5212)
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.29
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: Fri, 04 Sep 2020 21:00:08 -0000

Re: https://www.rfc-editor.org/errata/eid5212

FYI, the status has been changed to "Held for Document Update" per a request from Magnus Westerlund.

RFC Editor/ar

> On Sep 3, 2020, at 5:33 AM, Noveck, David <David.Noveck@netapp.com> wrote:
> 
> The explanatory text, with I agree with, indicates why this
> Should be held over for update, presumably in rf5661bis.  However the subject line says "rejected" and I don't understand why.
> 
> -----Original Message-----
> From: RFC Errata System <rfc-editor@rfc-editor.org> 
> Sent: Thursday, September 3, 2020 7:25 AM
> To: loghyr@primarydata.com; shepler@storspeed.com; mike@eisler.com; Noveck, David <David.Noveck@netapp.com>
> Cc: magnus.westerlund@ericsson.com; iesg@ietf.org; nfsv4@ietf.org; rfc-editor@rfc-editor.org
> Subject: [Errata Rejected] RFC5661 (5212)
> 
> NetApp Security WARNING: This is an external email. Do not click links or open attachments unless you recognize the sender and know the content is safe.
> 
> 
> 
> 
> The following errata report has been rejected for RFC5661, "Network File System (NFS) Version 4 Minor Version 1 Protocol".
> 
> --------------------------------------
> You may review the report below and at:
> https://www.rfc-editor.org/errata/eid5212
> 
> --------------------------------------
> Status: Rejected
> Type: Technical
> 
> Reported by: NFS4ERR_ROFS is not a valid error code for LAYOUTGET <loghyr@primarydata.com> Date Reported: 2017-12-19 Rejected by: Magnus Westerlund (IESG)
> 
> Section: 15.2
> 
> Original Text
> -------------
>   | LAYOUTGET            | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED,     |
>   |                      | NFS4ERR_BADIOMODE, NFS4ERR_BADLAYOUT,      |
>   |                      | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID,       |
>   |                      | NFS4ERR_DEADSESSION, NFS4ERR_DELAY,        |
>   |                      | NFS4ERR_DELEG_REVOKED, NFS4ERR_DQUOT,      |
>   |                      | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE,          |
>   |                      | NFS4ERR_INVAL, NFS4ERR_IO,                 |
>   |                      | NFS4ERR_LAYOUTTRYLATER,                    |
>   |                      | NFS4ERR_LAYOUTUNAVAILABLE, NFS4ERR_LOCKED, |
>   |                      | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE,       |
>   |                      | NFS4ERR_NOSPC, NFS4ERR_NOTSUPP,            |
>   |                      | NFS4ERR_OLD_STATEID, NFS4ERR_OPENMODE,     |
>   |                      | NFS4ERR_OP_NOT_IN_SESSION,                 |
>   |                      | NFS4ERR_RECALLCONFLICT,                    |
>   |                      | NFS4ERR_REP_TOO_BIG,                       |
>   |                      | NFS4ERR_REP_TOO_BIG_TO_CACHE,              |
>   |                      | NFS4ERR_REQ_TOO_BIG,                       |
>   |                      | NFS4ERR_RETRY_UNCACHED_REP,                |
>   |                      | NFS4ERR_SERVERFAULT, NFS4ERR_STALE,        |
>   |                      | NFS4ERR_TOOSMALL, NFS4ERR_TOO_MANY_OPS,    |
>   |                      | NFS4ERR_UNKNOWN_LAYOUTTYPE,                |
>   |                      | NFS4ERR_WRONG_TYPE                         |
> 
> 
> Corrected Text
> --------------
>   | LAYOUTGET            | NFS4ERR_ACCESS, NFS4ERR_ADMIN_REVOKED,     |
>   |                      | NFS4ERR_BADIOMODE, NFS4ERR_BADLAYOUT,      |
>   |                      | NFS4ERR_BADXDR, NFS4ERR_BAD_STATEID,       |
>   |                      | NFS4ERR_DEADSESSION, NFS4ERR_DELAY,        |
>   |                      | NFS4ERR_DELEG_REVOKED, NFS4ERR_DQUOT,      |
>   |                      | NFS4ERR_FHEXPIRED, NFS4ERR_GRACE,          |
>   |                      | NFS4ERR_INVAL, NFS4ERR_IO,                 |
>   |                      | NFS4ERR_LAYOUTTRYLATER,                    |
>   |                      | NFS4ERR_LAYOUTUNAVAILABLE, NFS4ERR_LOCKED, |
>   |                      | NFS4ERR_MOVED, NFS4ERR_NOFILEHANDLE,       |
>   |                      | NFS4ERR_NOSPC, NFS4ERR_NOTSUPP,            |
>   |                      | NFS4ERR_OLD_STATEID, NFS4ERR_OPENMODE,     |
>   |                      | NFS4ERR_OP_NOT_IN_SESSION,                 |
>   |                      | NFS4ERR_RECALLCONFLICT,                    |
>   |                      | NFS4ERR_REP_TOO_BIG,                       |
>   |                      | NFS4ERR_REP_TOO_BIG_TO_CACHE,              |
>   |                      | NFS4ERR_REQ_TOO_BIG,                       |
>   |                      | NFS4ERR_RETRY_UNCACHED_REP, NFS4ERR_ROFS,  |
>   |                      | NFS4ERR_SERVERFAULT, NFS4ERR_STALE,        |
>   |                      | NFS4ERR_TOOSMALL, NFS4ERR_TOO_MANY_OPS,    |
>   |                      | NFS4ERR_UNKNOWN_LAYOUTTYPE,                |
>   |                      | NFS4ERR_WRONG_TYPE                         |
> 
> 
> Notes
> -----
> It could be argued that the OPEN takes care of a NFS4ERR_ROFS for a LAYOUTGET of a LAYOUTIOMODE4_RW, but that does not explain why WRITE is allowed to return a NFS4ERR_ROFS.
> 
> With the Flex File Layout Type, the storage device depends on the metadata server enforcing the read-only filesystem semantics. An NFSv3 WRITE to the storage device might be accepted even though the filesystem might be RO. Further, if a snapshot is taken, the storage device might not be aware of the fact that a data file is in a snapshot.
> 
> Currently, if the underlying filesystem determines that the LAYOUTGET for a LAYOUTIOMODE4_RW is going to return NFS4ERR_ROFS, to be spec compliant, it MUST convert the error code to NFS4ERR_SERVERFAULT.  The client may then decide to perform IO through the metadata server with NFSv4 WRITE calls, which will in turn get a NFS4ERR_ROFS error. This change pushes the responsibility to be on the LAYOUTGET and allows the client to inform the application of an error earlier.
> 
> AD Comments:
> This topic requires WG discussion and establishment of consensus. Thus for future document update.
> 
> --VERIFIER NOTES--
>   This topic requires WG discussion and establishment of consensus. Thus for future document update.
> 
> 
> --------------------------------------
> RFC5661 (draft-ietf-nfsv4-minorversion1-29)
> --------------------------------------
> Title               : Network File System (NFS) Version 4 Minor Version 1 Protocol
> Publication Date    : January 2010
> Author(s)           : S. Shepler, Ed., M. Eisler, Ed., D. Noveck, Ed.
> Category            : PROPOSED STANDARD
> Source              : Network File System Version 4
> Area                : Transport
> Stream              : IETF
> Verifying Party     : IESG