lkml.org 
[lkml]   [2021]   [Nov]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.4 05/25] NFSv4.1: handle NFS4ERR_NOSPC by CREATE_SESSION
    Date
    From: Olga Kornievskaia <kolga@netapp.com>

    [ Upstream commit ea027cb2e1b59c76582af867b71d5c037fa6bb8e ]

    When the client receives ERR_NOSPC on reply to CREATE_SESSION
    it leads to a client hanging in nfs_wait_client_init_complete().
    Instead, complete and fail the client initiation with an EIO
    error which allows for the mount command to fail instead of
    hanging.

    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/nfs4state.c | 4 ++++
    1 file changed, 4 insertions(+)

    diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
    index ea680f619438b..54b6a05d533b7 100644
    --- a/fs/nfs/nfs4state.c
    +++ b/fs/nfs/nfs4state.c
    @@ -1966,6 +1966,10 @@ static int nfs4_handle_reclaim_lease_error(struct nfs_client *clp, int status)
    dprintk("%s: exit with error %d for server %s\n",
    __func__, -EPROTONOSUPPORT, clp->cl_hostname);
    return -EPROTONOSUPPORT;
    + case -ENOSPC:
    + if (clp->cl_cons_state == NFS_CS_SESSION_INITING)
    + nfs_mark_client_ready(clp, -EIO);
    + return -EIO;
    case -NFS4ERR_NOT_SAME: /* FixMe: implement recovery
    * in nfs4_exchange_id */
    default:
    --
    2.33.0
    \
     
     \ /
      Last update: 2021-11-30 16:03    [W:4.088 / U:1.368 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site