Re: [nfsv4] can a server replace a read deleg with a write deleg?
Trond Myklebust <trond.myklebust@fys.uio.no> Sun, 04 July 2010 16:24 UTC
Return-Path: <trond.myklebust@fys.uio.no>
X-Original-To: nfsv4@core3.amsl.com
Delivered-To: nfsv4@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id E25E53A67F2 for <nfsv4@core3.amsl.com>; Sun, 4 Jul 2010 09:24:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.949
X-Spam-Level:
X-Spam-Status: No, score=-5.949 tagged_above=-999 required=5 tests=[AWL=0.650, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1Mq5pG0Tp-hB for <nfsv4@core3.amsl.com>; Sun, 4 Jul 2010 09:24:35 -0700 (PDT)
Received: from mail-out1.uio.no (mail-out1.uio.no [129.240.10.57]) by core3.amsl.com (Postfix) with ESMTP id CD8A53A67D7 for <nfsv4@ietf.org>; Sun, 4 Jul 2010 09:24:34 -0700 (PDT)
Received: from mail-mx1.uio.no ([129.240.10.29]) by mail-out1.uio.no with esmtp (Exim 4.69) (envelope-from <trond.myklebust@fys.uio.no>) id 1OVRzf-00058C-0m; Sun, 04 Jul 2010 18:24:35 +0200
Received: from c-68-40-206-115.hsd1.mi.comcast.net ([68.40.206.115] helo=[192.168.1.29]) by mail-mx1.uio.no with esmtpsa (SSLv3:CAMELLIA256-SHA:256) user trondmy (Exim 4.69) (envelope-from <trond.myklebust@fys.uio.no>) id 1OVRze-0000b7-8O; Sun, 04 Jul 2010 18:24:34 +0200
From: Trond Myklebust <trond.myklebust@fys.uio.no>
To: Rick Macklem <rmacklem@uoguelph.ca>
In-Reply-To: <Pine.GSO.4.63.1007041217520.6453@muncher.cs.uoguelph.ca>
References: <Pine.GSO.4.63.1007041217520.6453@muncher.cs.uoguelph.ca>
Content-Type: text/plain; charset="UTF-8"
Date: Sun, 04 Jul 2010 12:24:32 -0400
Message-ID: <1278260672.29898.13.camel@heimdal.trondhjem.org>
Mime-Version: 1.0
X-Mailer: Evolution 2.30.2 (2.30.2-1.fc13)
Content-Transfer-Encoding: 7bit
X-UiO-Ratelimit-Test: rcpts/h 6 msgs/h 3 sum rcpts/h 8 sum msgs/h 3 total rcpts 545 max rcpts/h 20 ratelimit 0
X-UiO-Spam-info: not spam, SpamAssassin (score=-5.0, required=5.0, autolearn=disabled, UIO_MAIL_IS_INTERNAL=-5, uiobl=NO, uiouri=NO)
X-UiO-Scanned: 32DDC4DAE188FD8870B4FA848435F8E52247E2D8
X-UiO-SPAM-Test: remote_host: 68.40.206.115 spam_score: -49 maxlevel 80 minaction 2 bait 0 mail/h: 3 total 244 max/h 6 blacklist 0 greylist 0 ratelimit 0
Cc: nfsv4@ietf.org
Subject: Re: [nfsv4] can a server replace a read deleg with a write deleg?
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/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: Sun, 04 Jul 2010 16:24:36 -0000
On Sun, 2010-07-04 at 12:28 -0400, Rick Macklem wrote: > Somewhat tangencial to the recent thread, what about the following > simple case: > - client opens foo for reading and gets read_deleg_stateid_foo > - client opens foo for writing against the server (which it must do > when it holds a read delegation) > > Now, if the server sees that this client is the only one with a read > delegation for (and opens on) "foo", it could issue a write delegation > to the client for "foo". > - To do this does it first need to CBRecall the read delegation? (If so, > it probably cannot issue the write delegation for this open, since it > would take too long to reply to the Open unless it returns NFS4ERR_DELAY > for the Open for a while. Not an ideal situation.) > OR > - Can it return a write delegation for "foo" in the write open reply? > - If it is allowed to do this, does this delegation replace > read_delegation_stateid_foo or is there now multiple delegations for > "foo" issued to the same client? > (I don't like the concept of having multiple delegations issued to > the same client for the same file concurrently and I'm pretty sure > my client isn't implemented to handle this case. Without looking at > the code to be sure, I think it logs an error and throws away the > new second delegation.) > > I don't think this is clarified in RFC3530, but please correct me if I'm > incorrect w.r.t. this. I read RFC3530 as being perfectly clear on this. In section 9.4 it explicitly states that the client _cannot_ make any changes to the contents or attributes of the file if it holds a read delegation. In section 9.4.4 it states that the server must recall the delegation in the event of a conflicting OPEN or READ/WRITE w/ special stateids. Cheers Trond
- [nfsv4] can a server replace a read deleg with a … Rick Macklem
- Re: [nfsv4] can a server replace a read deleg wit… Trond Myklebust
- Re: [nfsv4] can a server replace a read deleg wit… Rick Macklem
- Re: [nfsv4] can a server replace a read deleg wit… Trond Myklebust
- Re: [nfsv4] can a server replace a read deleg wit… david.noveck
- Re: [nfsv4] can a server replace a read deleg wit… david.noveck
- Re: [nfsv4] can a server replace a read deleg wit… Rick Macklem