summaryrefslogtreecommitdiffstats
path: root/sys/nfsserver/nfs_srvsock.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1998-05-31 17:57:43 +0000
committerpeter <peter@FreeBSD.org>1998-05-31 17:57:43 +0000
commit7246bc51937eec415a80a48ce8b5149d5fe7c16d (patch)
tree17053e7c0497688cf5ccf55f7291a913e6fb24f0 /sys/nfsserver/nfs_srvsock.c
parent2b239be950449c9cd769dd8faa805693f440b806 (diff)
downloadFreeBSD-src-7246bc51937eec415a80a48ce8b5149d5fe7c16d.zip
FreeBSD-src-7246bc51937eec415a80a48ce8b5149d5fe7c16d.tar.gz
Consider for readdir chunk sizes when tuning socket buffer reservations.
Obtained from: NetBSD
Diffstat (limited to 'sys/nfsserver/nfs_srvsock.c')
-rw-r--r--sys/nfsserver/nfs_srvsock.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/nfsserver/nfs_srvsock.c b/sys/nfsserver/nfs_srvsock.c
index ca9517f..d9dcbbc 100644
--- a/sys/nfsserver/nfs_srvsock.c
+++ b/sys/nfsserver/nfs_srvsock.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_socket.c 8.5 (Berkeley) 3/30/95
- * $Id: nfs_socket.c,v 1.32 1998/05/19 07:11:23 peter Exp $
+ * $Id: nfs_socket.c,v 1.33 1998/05/31 17:27:49 peter Exp $
*/
/*
@@ -272,10 +272,12 @@ nfs_connect(nmp, rep)
}
if (nmp->nm_sotype == SOCK_DGRAM) {
sndreserve = (nmp->nm_wsize + NFS_MAXPKTHDR) * 2;
- rcvreserve = (nmp->nm_rsize + NFS_MAXPKTHDR) * 2;
+ rcvreserve = (max(nmp->nm_rsize, nmp->nm_readdirsize) +
+ NFS_MAXPKTHDR) * 2;
} else if (nmp->nm_sotype == SOCK_SEQPACKET) {
sndreserve = (nmp->nm_wsize + NFS_MAXPKTHDR) * 2;
- rcvreserve = (nmp->nm_rsize + NFS_MAXPKTHDR) * 2;
+ rcvreserve = (max(nmp->nm_rsize, nmp->nm_readdirsize) +
+ NFS_MAXPKTHDR) * 2;
} else {
if (nmp->nm_sotype != SOCK_STREAM)
panic("nfscon sotype");
OpenPOWER on IntegriCloud