diff options
author | mohans <mohans@FreeBSD.org> | 2007-10-12 03:56:27 +0000 |
---|---|---|
committer | mohans <mohans@FreeBSD.org> | 2007-10-12 03:56:27 +0000 |
commit | 11057bb00f9f3b774ef74c31ebed91a17cb02a2b (patch) | |
tree | f34b01cf15801e9a776d59231a8e65de164c98d1 /sys/nfsserver | |
parent | e279fe58cfce32d714c22d04c3909696223222a2 (diff) | |
download | FreeBSD-src-11057bb00f9f3b774ef74c31ebed91a17cb02a2b.zip FreeBSD-src-11057bb00f9f3b774ef74c31ebed91a17cb02a2b.tar.gz |
Set the NFS server sockbuf high watermarks to the system defaults
(up form 32KB). The low highwatermark setting caused UDP fullsock
request drops, throttling thruput greatly.
Reported by: Kris Kennaway
Approved by: re@ (Ken Smith)
Diffstat (limited to 'sys/nfsserver')
-rw-r--r-- | sys/nfsserver/nfs_syscalls.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/nfsserver/nfs_syscalls.c b/sys/nfsserver/nfs_syscalls.c index aea9cc4..3043fcd 100644 --- a/sys/nfsserver/nfs_syscalls.c +++ b/sys/nfsserver/nfs_syscalls.c @@ -100,6 +100,8 @@ static int nfssvc_addsock(struct file *, struct sockaddr *, static void nfsrv_zapsock(struct nfssvc_sock *slp); static int nfssvc_nfsd(struct thread *); +extern u_long sb_max_adj; + /* * NFS server system calls */ @@ -206,10 +208,7 @@ nfssvc_addsock(struct file *fp, struct sockaddr *mynam, struct thread *td) } } #endif - if (so->so_type == SOCK_STREAM) - siz = NFS_MAXPACKET + sizeof (u_long); - else - siz = NFS_MAXPACKET; + siz = sb_max_adj; error = soreserve(so, siz, siz); if (error) { if (mynam != NULL) |