Re: [PATCH 2/2] nfs41: handle BLK_LAYOUT CB_RECALL_ANY

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 1, 2011 at 12:45 AM, Trond Myklebust
<Trond.Myklebust@xxxxxxxxxx> wrote:
> On Tue, 2011-11-01 at 00:38 +0800, Peng Tao wrote:
>> On Mon, Oct 31, 2011 at 11:49 PM, Trond Myklebust
>> <Trond.Myklebust@xxxxxxxxxx> wrote:
>> > On Mon, 2011-10-31 at 08:15 -0700, Peng Tao wrote:
>> >> For blocklayout, we need to issue layoutreturn to return layouts when
>> >> handling CB_RECALL_ANY.
>> >
>> > Why?
>> Because replying NFS4_OK to CB_RECALL_ANY indicates that client knows
>> that server wants client to return layout. And server will be waiting
>> for layoutreturn in such case.
>
> No it doesn't. NFS4_OK means that the client acknowledges that it has
> been given a new limit on the number of recallable objects it can keep.
> There is no requirement in the text that it should send layoutreturn or
> that the server should expect that.
Per RFC5661 section 20.6.3:
It is the job of the client to bring down the size of the
   recallable object set in line with each CB_RECALL_ANY received

For layout objects, the only way client can bring down the object
number is to send layoutreturn.

Besides, the moment client gets CB_RECALL_ANY is likely because server
reaches some resource threshold. If client doesn't send layoutreturn,
server can refusing client from getting more layouts.

>
> In any case, there is no reason to make a difference between block,
> object and file layouts when it comes to CB_RECALL_ANY. The code to
> handle it should be the same for all.
>
object layout isn't handling CB_RECALL_ANY yet. And from current code,
I was assuming file layouts have their own method at server side to
handle it (e.g., translating NFS4_OK of CB_RECALL_ANY into client has
dropped all its layout...).So I made it for block only.

Thanks,
Tao

> --
> Trond Myklebust
> Linux NFS client maintainer
>
> NetApp
> Trond.Myklebust@xxxxxxxxxx
> www.netapp.com
>
>



-- 
Thanks,
-Bergwolf
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux