lkml.org 
[lkml]   [2021]   [Mar]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.4 08/33] NFS: Correct size calculation for create reply length
    Date
    From: Frank Sorenson <sorenson@redhat.com>

    [ Upstream commit ad3dbe35c833c2d4d0bbf3f04c785d32f931e7c9 ]

    CREATE requests return a post_op_fh3, rather than nfs_fh3. The
    post_op_fh3 includes an extra word to indicate 'handle_follows'.

    Without that additional word, create fails when full 64-byte
    filehandles are in use.

    Add NFS3_post_op_fh_sz, and correct the size calculation for
    NFS3_createres_sz.

    Signed-off-by: Frank Sorenson <sorenson@redhat.com>
    Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    fs/nfs/nfs3xdr.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    diff --git a/fs/nfs/nfs3xdr.c b/fs/nfs/nfs3xdr.c
    index 267126d32ec0..4a68837e92ea 100644
    --- a/fs/nfs/nfs3xdr.c
    +++ b/fs/nfs/nfs3xdr.c
    @@ -33,6 +33,7 @@
    */
    #define NFS3_fhandle_sz (1+16)
    #define NFS3_fh_sz (NFS3_fhandle_sz) /* shorthand */
    +#define NFS3_post_op_fh_sz (1+NFS3_fh_sz)
    #define NFS3_sattr_sz (15)
    #define NFS3_filename_sz (1+(NFS3_MAXNAMLEN>>2))
    #define NFS3_path_sz (1+(NFS3_MAXPATHLEN>>2))
    @@ -70,7 +71,7 @@
    #define NFS3_readlinkres_sz (1+NFS3_post_op_attr_sz+1)
    #define NFS3_readres_sz (1+NFS3_post_op_attr_sz+3)
    #define NFS3_writeres_sz (1+NFS3_wcc_data_sz+4)
    -#define NFS3_createres_sz (1+NFS3_fh_sz+NFS3_post_op_attr_sz+NFS3_wcc_data_sz)
    +#define NFS3_createres_sz (1+NFS3_post_op_fh_sz+NFS3_post_op_attr_sz+NFS3_wcc_data_sz)
    #define NFS3_renameres_sz (1+(2 * NFS3_wcc_data_sz))
    #define NFS3_linkres_sz (1+NFS3_post_op_attr_sz+NFS3_wcc_data_sz)
    #define NFS3_readdirres_sz (1+NFS3_post_op_attr_sz+2)
    --
    2.30.1


    \
     
     \ /
      Last update: 2021-03-29 10:03    [W:4.066 / U:0.256 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site