lkml.org 
[lkml]   [2020]   [Jun]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.6 007/606] NFSv3: fix rpc receive buffer size for MOUNT call
    Date
    From: Olga Kornievskaia <olga.kornievskaia@gmail.com>

    [ Upstream commit 8eed292bc8cbf737e46fb1c119d4c8f6dcb00650 ]

    Prior to commit e3d3ab64dd66 ("SUNRPC: Use au_rslack when
    computing reply buffer size"), there was enough slack in the reply
    buffer to commodate filehandles of size 60bytes. However, the real
    problem was that the reply buffer size for the MOUNT operation was
    not correctly calculated. Received buffer size used the filehandle
    size for NFSv2 (32bytes) which is much smaller than the allowed
    filehandle size for the v3 mounts.

    Fix the reply buffer size (decode arguments size) for the MNT command.

    Fixes: 2c94b8eca1a2 ("SUNRPC: Use au_rslack when computing reply buffer size")
    Signed-off-by: Olga Kornievskaia <kolga@netapp.com>
    Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    fs/nfs/mount_clnt.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    diff --git a/fs/nfs/mount_clnt.c b/fs/nfs/mount_clnt.c
    index 35c8cb2d7637..dda5c3e65d8d 100644
    --- a/fs/nfs/mount_clnt.c
    +++ b/fs/nfs/mount_clnt.c
    @@ -30,6 +30,7 @@
    #define encode_dirpath_sz (1 + XDR_QUADLEN(MNTPATHLEN))
    #define MNT_status_sz (1)
    #define MNT_fhandle_sz XDR_QUADLEN(NFS2_FHSIZE)
    +#define MNT_fhandlev3_sz XDR_QUADLEN(NFS3_FHSIZE)
    #define MNT_authflav3_sz (1 + NFS_MAX_SECFLAVORS)

    /*
    @@ -37,7 +38,7 @@
    */
    #define MNT_enc_dirpath_sz encode_dirpath_sz
    #define MNT_dec_mountres_sz (MNT_status_sz + MNT_fhandle_sz)
    -#define MNT_dec_mountres3_sz (MNT_status_sz + MNT_fhandle_sz + \
    +#define MNT_dec_mountres3_sz (MNT_status_sz + MNT_fhandlev3_sz + \
    MNT_authflav3_sz)

    /*
    --
    2.25.1
    \
     
     \ /
      Last update: 2020-06-09 02:43    [W:4.172 / U:0.380 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site