Presently the client mount hangs for NFS4ERR_NOSPC repsonse from server during create session operation. Handle this error at the client side and pass it back to user-space, which may chose to mount with lower nfs versions. Signed-off-by: Manjunath Patil <manjunath.b.patil@xxxxxxxxxx> --- fs/nfs/nfs4state.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c index 2bf2eaa..2134cf5 100644 --- a/fs/nfs/nfs4state.c +++ b/fs/nfs/nfs4state.c @@ -381,6 +381,8 @@ int nfs41_discover_server_trunking(struct nfs_client *clp, } nfs4_schedule_state_manager(clp); status = nfs_wait_client_init_complete(clp); + if (!status) /* -ERESTARTSYS */ + status = nfs_client_init_status(clp); if (status < 0) nfs_put_client(clp); return status; @@ -1919,6 +1921,9 @@ 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 -NFS4ERR_NOSPC: + nfs_mark_client_ready(clp, status); + /*fall through*/ case -NFS4ERR_NOT_SAME: /* FixMe: implement recovery * in nfs4_exchange_id */ default: @@ -2186,6 +2191,7 @@ int nfs4_discover_server_trunking(struct nfs_client *clp, case 0: case -EINTR: case -ERESTARTSYS: + case -NFS4ERR_NOSPC: break; case -ETIMEDOUT: if (clnt->cl_softrtry) -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html