aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs
diff options
context:
space:
mode:
Diffstat (limited to 'fs/nfs')
-rw-r--r--fs/nfs/nfs4proc.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index bd4555fbdf25..019a009e73a0 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -4935,14 +4935,22 @@ int nfs4_init_session(struct nfs_server *server)
4935{ 4935{
4936 struct nfs_client *clp = server->nfs_client; 4936 struct nfs_client *clp = server->nfs_client;
4937 struct nfs4_session *session; 4937 struct nfs4_session *session;
4938 unsigned int rsize, wsize;
4938 int ret; 4939 int ret;
4939 4940
4940 if (!nfs4_has_session(clp)) 4941 if (!nfs4_has_session(clp))
4941 return 0; 4942 return 0;
4942 4943
4944 rsize = server->rsize;
4945 if (rsize == 0)
4946 rsize = NFS_MAX_FILE_IO_SIZE;
4947 wsize = server->wsize;
4948 if (wsize == 0)
4949 wsize = NFS_MAX_FILE_IO_SIZE;
4950
4943 session = clp->cl_session; 4951 session = clp->cl_session;
4944 session->fc_attrs.max_rqst_sz = server->wsize + nfs41_maxwrite_overhead; 4952 session->fc_attrs.max_rqst_sz = wsize + nfs41_maxwrite_overhead;
4945 session->fc_attrs.max_resp_sz = server->rsize + nfs41_maxread_overhead; 4953 session->fc_attrs.max_resp_sz = rsize + nfs41_maxread_overhead;
4946 4954
4947 ret = nfs4_recover_expired_lease(server); 4955 ret = nfs4_recover_expired_lease(server);
4948 if (!ret) 4956 if (!ret)