[lkml]   [2010]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH -V11 1/9] exportfs: Return the minimum required handle size
    On Fri, 21 May 2010 18:15:16 -0400, "J. Bruce Fields" <> wrote:
    > On Thu, May 20, 2010 at 01:05:30PM +0530, Aneesh Kumar K.V wrote:
    > > The exportfs encode handle function should return the minimum required
    > > handle size. This helps user to find out the handle size by passing 0
    > > handle size in the first step and then redoing to the call again with
    > > the returned handle size value.
    > The encode_fh() interface is a little confusing. (Not your fault,
    > really, mainly it's the return value (and the special use of 255) that I
    > always find odd.)
    > But maybe it would help to have a little more documention in the
    > export_encode_fh() kerneldoc comment and/or in
    > Documentation/filesystems/nfs/Exporting?

    Kernel documentation says

    * encode_fh:
    * @encode_fh should store in the file handle fragment @fh (using at most
    * @max_len bytes) information that can be used by @decode_fh to recover the
    * file refered to by the &struct dentry @de. If the @connectable flag is
    * set, the encode_fh() should store sufficient information so that a good
    * attempt can be made to find not only the file but also it's place in the
    * filesystem. This typically means storing a reference to de->d_parent in
    * the filehandle fragment. encode_fh() should return the number of bytes
    * stored or a negative error code such as %-ENOSPC

    Clearly the file system encode_fh is not returning the correct return
    values. Should i fix the kernel to follow the documentation or should
    the kernel documentation should be fixed. I would prefer code, because
    the documentation look more easy/clear to follow that returning value 255.


     \ /
      Last update: 2010-05-22 17:31    [W:0.019 / U:7.240 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site