Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp1040434ybl; Wed, 28 Aug 2019 08:48:31 -0700 (PDT) X-Google-Smtp-Source: APXvYqwPzq77h0ZoaGlF33qI+dROHaOqnU3cfZvMsPFI5VGtMHkbH80S3uRFwlm9GtMr8pmylzRU X-Received: by 2002:a63:c0d:: with SMTP id b13mr4008398pgl.420.1567007311141; Wed, 28 Aug 2019 08:48:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1567007311; cv=none; d=google.com; s=arc-20160816; b=ljwrnEtgXJcDoXZeyfn4Wd0JGaWnCWnR/GkK0ghiLJUg6sUDAYskDTqZxBt/G0UDaS WPkMH1D1HTaTQjCO5JH9IBJd4hbE7rKqYKcFsGwXB1s5ELhaUzUu5aFNC6fFl3KXPSpS FwyZ49hNP0gbG+Uw/SdPZ2BqJUtpFb2EJO/hP+y7FFk4uNflK3E578qczk2qb5shJY41 9u0nSdGCADk4zMGHKWNP4hdiCvFf0Q4QoCl0w3sjjsesTQbN3DcBAgPS8P13EKqcpS4B 7tNSLu2Xu3ahDIfClnfgxMkIK35I6PGmJtLPzripD0t2N0B7CuZ68r8Hfg92lW0KvBxi CTlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=mMBhD/Grx9jbvoHkp9Jhl80dQ7ew/HwFyT5v4XIjzaQ=; b=ft5oeuiwmpSgm08rqd2tThBbMLUulJYlCc/WiQEhGVOtiZpqWFtCjnB8oS4mZiC5LX 5c0ufC/Vqx71Mvc/iaI0Nv5nPEJEBvOYOll+N3pl+22zUhgVfKemZCSchRqL+EPsfX4H UWMR/QnID/mIkQcjku96WOkRPkEzG85/mpNiKZANKukdfbgE/pFXOvtTKwdzzilgZHEK pTYqUXVxNoR2AKFfxk/QTgJdtLL/pEQvHYjRG7xXBIRj9Zw0ep/qmd7ECRGn7OsZ8/cz 5HYI7CNK+9+TwGBvR1m3e5GGcx9waJJ3D6YJpGcFw0KzHoycxr3LoLhJZz1uU0AWdQt1 TgAQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h20si2077243pjq.87.2019.08.28.08.48.13; Wed, 28 Aug 2019 08:48:31 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726437AbfH1Pqt (ORCPT + 99 others); Wed, 28 Aug 2019 11:46:49 -0400 Received: from fieldses.org ([173.255.197.46]:49096 "EHLO fieldses.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726428AbfH1Pqt (ORCPT ); Wed, 28 Aug 2019 11:46:49 -0400 Received: by fieldses.org (Postfix, from userid 2815) id 0435F7CC; Wed, 28 Aug 2019 11:46:49 -0400 (EDT) Date: Wed, 28 Aug 2019 11:46:48 -0400 From: Bruce Fields To: Rick Macklem Cc: "J. Bruce Fields" , Jeff Layton , Chuck Lever , Trond Myklebust , Linux NFS Mailing List Subject: Re: [PATCH 0/3] Handling NFSv3 I/O errors in knfsd Message-ID: <20190828154648.GB26284@fieldses.org> References: <20190827145912.GC9804@fieldses.org> <1ee75165d548b336f5724b6d655aa2545b9270c3.camel@hammerspace.com> <20190828134839.GA26492@fieldses.org> <45582F32-69C7-4DC8-A608-E45038A44D42@oracle.com> <20190828140044.GA14249@parsley.fieldses.org> <990B7B57-53B8-4ECB-A08B-1AFD2FCE13A6@oracle.com> <31658faabfbe3b4c2925bd899e264adf501fbc75.camel@redhat.com> <20190828144031.GB14249@parsley.fieldses.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org On Wed, Aug 28, 2019 at 03:12:26PM +0000, Rick Macklem wrote: > J. Bruce Fields wrote: > >On Wed, Aug 28, 2019 at 10:16:09AM -0400, Jeff Layton wrote: > >> For the most part, these sorts of errors tend to be rare. If it turns > >> out to be a problem we could consider moving the verifier into > >> svc_export or something? > > > >As Trond says, this isn't really a server implementation issue, it's a > >protocol issue. If a client detects when to resend writes by storing a > >single verifier per server, then returning different verifiers from > >writes to different exports will have it resending every time it writes > >to one export then another. > > Well, here's what RFC-1813 says about the write verifier: > This cookie must be consistent during a single instance > of the NFS version 3 protocol service and must be > unique between instances of the NFS version 3 protocol > server, where uncommitted data may be lost. > You could debate what "service" means in the above, but I'd say it isn't "per file". > > However, since there is no way for an NFSv3 client to know what a "server" is, > the FreeBSD client (and maybe the other *BSD, although I haven't been involved > in them for a long time) stores the write verifier "per mount". > --> So, for the FreeBSD client, it is at the granularity of what the NFSv3 client sees as > a single file system. (Typically a single file system on the server unless the knfsd > plays the game of coalescing multiple file systems by uniquifying the I-node#, etc.) Oh, well, that would be nice if we could at least count on per-filesystem. > It is conceivable that some other NFSv3 client might assume "same > server IP address --> same server" and store it "per server IP", but I > have no idea if any such client exists. Hm. --b.