Re: [nfsv4] parallel LAYOUTGETs using open stateid

Fred Isaman <iisaman@citi.umich.edu> Thu, 07 October 2010 14:19 UTC

Return-Path: <faisaman4@gmail.com>
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 1F03C3A705C for <nfsv4@core3.amsl.com>; Thu, 7 Oct 2010 07:19:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.977
X-Spam-Level:
X-Spam-Status: No, score=-1.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
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 I0tSW002Dhqk for <nfsv4@core3.amsl.com>; Thu, 7 Oct 2010 07:19:30 -0700 (PDT)
Received: from mail-bw0-f44.google.com (mail-bw0-f44.google.com [209.85.214.44]) by core3.amsl.com (Postfix) with ESMTP id 69EEF3A6F5B for <nfsv4@ietf.org>; Thu, 7 Oct 2010 07:19:30 -0700 (PDT)
Received: by bwz9 with SMTP id 9so593580bwz.31 for <nfsv4@ietf.org>; Thu, 07 Oct 2010 07:20:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=l3RReuRW0jvIyqXVus+LK3Gs9frht55Krm2LeCl9OkM=; b=PtoNVS3lj1HJAZ1TeycYYm6cXJu8JACQz+hQlTl7Ufc99tDtgRvsJdD2lNIQ15llGX ANZa+6SoDt8G6ueY7mzM79BidVkOmqYJI8RcU1pdRo4408Ph7XFZ3iTqoAJBEAu7by78 7f65CRUX/yGkt5Js0n8VnXAufn0ThfqsAdi/g=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=AMXXd+ZUI+z96DMjTNNpXCvhPJbzWrHfdFao4EvhchZLip4NyV785iysOXz0iLyN5O 1R4cNf+AG1ShCw9moC0oZZnytNFdG6sQNI9zwKDk2gVwUWTIEkMCtn5umykduNJYEu1P ZkPqQQ0YKkhPkLxmmPJauL9hqwvoaUZgvgAvk=
MIME-Version: 1.0
Received: by 10.204.75.132 with SMTP id y4mr725984bkj.130.1286461232290; Thu, 07 Oct 2010 07:20:32 -0700 (PDT)
Sender: faisaman4@gmail.com
Received: by 10.204.48.34 with HTTP; Thu, 7 Oct 2010 07:20:32 -0700 (PDT)
In-Reply-To: <AANLkTin+0BG=u3o2DZcHgdODoaznePOeTrmQJfh9C6Ym@mail.gmail.com>
References: <AANLkTinZ1t1YbL55vkT0OJ0i2j9AqNuvFStTwFoGO-dB@mail.gmail.com> <AANLkTin+0BG=u3o2DZcHgdODoaznePOeTrmQJfh9C6Ym@mail.gmail.com>
Date: Thu, 07 Oct 2010 10:20:32 -0400
X-Google-Sender-Auth: 2O3YN-JHHqa_4EiRnR9Uo95WCO0
Message-ID: <AANLkTimUgacoB2sEP=_k2RfVfuD04Ane1JY0ip5R+OpB@mail.gmail.com>
From: Fred Isaman <iisaman@citi.umich.edu>
To: Benny Halevy <bhalevy@panasas.com>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Cc: nfsv4@ietf.org
Subject: Re: [nfsv4] parallel LAYOUTGETs using open stateid
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: Thu, 07 Oct 2010 14:19:33 -0000

On Thu, Oct 7, 2010 at 9:50 AM, Benny Halevy <bhalevy@panasas.com> wrote:
> On Thu, Oct 7, 2010 at 9:21 AM, Fred Isaman <iisaman@citi.umich.edu> wrote:
>> This question came up as I was going through our layout stateid code.
>>
>> Can the client send multiple LAYOUTGETs in parallel before getting a
>> layoutstateid by using an open stateid?
>> If so, what is the server response?  The spec is not clear, but I
>> would assume it would do one of:
>> a) returning an error (what error?) on all but the first LAYOUTGET it sees
>> b) matching the openstateid to the layoutstateid it has already given
>> out and sending a reply with that stateid and a bumped seqid
>
> I'm in favour of (b).
> Are there any problems you see in that approach?
>
> Benny
>

The wrinkle it adds is that, in the normal case, after the CB_RECALL
is resolved, any stale LAYOUTGETs (sent by the client before it
received the CB_RECALL) that the server receives will either be
processed normally with a bumped seqid or an error (if the server
invalidated the "other" part of the stateid.)  In the openstateid
case, the server loses the option of returning an error, instead it
wuold create a new "other" with seqid=1.  That said, I don't see that
this causes any problems apart from extra bookkeeping.

Fred

>> Fred
>> _______________________________________________
>> nfsv4 mailing list
>> nfsv4@ietf.org
>> https://www.ietf.org/mailman/listinfo/nfsv4
>>
>