Hi Dan/Matt,

In the recent LinuxCon Europe Conference, Christoph Hellwig has given a 
talk on "A Simple, and Scalable pNFS Server For Linux" [1]

During that talk, he has mentioned that for kernel-NFS , LayoutRecall 
semantics & logic is same as DelegRecall (at least for block & 
object-type layouts and probably for file layouts too), i.e, for any 
conflicting access, we need to block that I/O until the layouts are 
recalled.

But I guess in NFS-Ganesha, we do not block the I/Os at the moment while 
recalling layouts. We would like to know if we need to follow kernel-NFS 
here or is to left to NFS server implementation to decide when to recall 
layouts and why we choose not to block the I/Os.

Also we seem to be leaving it to FSALs to handle/recall the layouts 
unlike locks/Delegations whose conflicts are checked in common SAL layer 
itself. Is there any particular reason behind it? Do we leave the 
decision when to recall layout and/or block the conflicting I/Os to the 
FSALs to handle.

[1] 
http://events.linuxfoundation.org/events/linuxcon-europe/program/schedule

Thanks,
Soumya

On 09/24/2015 06:21 PM, Daniel Gryniewicz wrote:
> A layout is a guarantee of ownership for the portion of the file
> covered.  No other conflicting file access can be done while the
> layout is granted.  So, if conflicting access is needed, the layout
> must be recalled.  In addition, if something happens in the cluster
> that would invalidate that access to that part of the file (such as
> loss of a node moving data to a backup node, or cluster optimization
> moving the location of the data, or storage nodes partitioning making
> the data unavailable, etc.), the layout must be recalled.
>
> It's probably best to recall layouts via an upcall.  VFS is not the
> best model to follow here, since it's not a clustered filesystem.
>
> Dan
>
> On Thu, Sep 24, 2015 at 5:07 AM, Jiffin Tony Thottan
> <jthot...@redhat.com> wrote:
>> Hi all,
>>
>> Currently I am trying to add support for LAYOUTRECALL in FSAL_GLUSTER.
>> So I look through other
>> FSAL implementation and RFC5661 once again. As far as I understand it is
>> a notification send from
>> M.D.S. to client demanding  back the layouts. First I try to figure out
>> scenarios in which layoutrecall
>> is useful and following came into my mind(May be I am wrong and also
>> please help me finding more) :
>>
>> 1.) While an I/O is performed , layout of file changes due to a
>> gluster-internal process
>>
>> 2.) two clients performing I/O on same file based on layout provided by
>> two different M.D.Ses
>> [Currently in FSAL_GLUSTER provides layout for entire file because
>> entire file is located on Storage Device]
>>
>> 3.) When detach a brick from the storage pool in gluster.
>>
>> But as a second thought , is it necessary to have LAYOUTRECALL ? Layout
>> grants permission to a client
>> for performing  a I/O. But it does not guarantee  such that only `this
>> client can perform I/O on that`.
>> And commenting out LAYOUTRECALL from FSAL_CEPH increases my doubt.
>>
>> And one more question , FSAL_GPFS introduced LAYOUTRECALL as part of
>> UPCALL thread and FSAL_VFS
>> as part of a call back thread. So which one will be better should
>> handled as part of UPCALL thread or
>> separately using another thread ?
>>
>> Please correct me if anything mentioned above is wrong.
>>
>> With Regards and Thanks,
>> Jiffin
>>
>> ------------------------------------------------------------------------------
>> Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
>> Get real-time metrics from all of your servers, apps and tools
>> in one place.
>> SourceForge users - Click here to start your Free Trial of Datadog now!
>> http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
>> _______________________________________________
>> Nfs-ganesha-devel mailing list
>> Nfs-ganesha-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel
>
> ------------------------------------------------------------------------------
> Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
> Get real-time metrics from all of your servers, apps and tools
> in one place.
> SourceForge users - Click here to start your Free Trial of Datadog now!
> http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
> _______________________________________________
> Nfs-ganesha-devel mailing list
> Nfs-ganesha-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel
>

------------------------------------------------------------------------------
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel

Reply via email to