On Fri, Dec 21, 2012 at 02:34:50PM +0100, Jan Stary wrote: > On 5.2/i386, man sysctl says > > To adjust the number of kernel nfsio threads used to service asynchronous > I/O requests on an NFS client machine: > > # sysctl vfs.nfs.iothreads=4 > > The default is 4; 20 is the maximum. See nfssvc(2) and nfsd(8) for > further discussion. > > Does it still apply? The default now seems to be > > # sysctl vfs.nfs.iothreads > vfs.nfs.iothreads=-1 > > which scales itself to 4 when I copy a file from a NFS server. > Should I be touching vfs.nfs.iothreads manually? > Setting it to 20 just panicked my 5.2/i386. > > Also, neither nfssvc(2) nor nfsd(8) seems > to contain any "further discussion" of this. >
ok, my proposal below. anyone want to ok it? jmc Index: lib/libc/gen/sysctl.3 =================================================================== RCS file: /cvs/src/lib/libc/gen/sysctl.3,v retrieving revision 1.215 diff -u -r1.215 sysctl.3 --- lib/libc/gen/sysctl.3 18 Aug 2012 15:40:30 -0000 1.215 +++ lib/libc/gen/sysctl.3 23 Dec 2012 16:58:45 -0000 @@ -2125,6 +2125,9 @@ Should be set high enough for the server to handle the maximum level of concurrency from its clients, typically four to six. +The default is set to 4 automatically when +.Xr nfsd 8 +is processing requests; 20 is the maximum it can be set to. .El .El .El Index: sbin/sysctl/sysctl.8 =================================================================== RCS file: /cvs/src/sbin/sysctl/sysctl.8,v retrieving revision 1.164 diff -u -r1.164 sysctl.8 --- sbin/sysctl/sysctl.8 10 Apr 2012 15:57:36 -0000 1.164 +++ sbin/sysctl/sysctl.8 23 Dec 2012 16:58:45 -0000 @@ -509,19 +509,6 @@ # sysctl net.inet.tcp.baddynamic=-871 .Ed .Pp -To adjust the number of kernel nfsio -threads used to service asynchronous -I/O requests on an NFS client machine: -.Pp -.Dl # sysctl vfs.nfs.iothreads=4 -.Pp -The default is 4; 20 is the maximum. -See -.Xr nfssvc 2 -and -.Xr nfsd 8 -for further discussion. -.Pp To set the amount of shared memory available in the system and the maximum number of shared memory segments: .Bd -literal -offset indent Index: sbin/nfsd/nfsd.8 =================================================================== RCS file: /cvs/src/sbin/nfsd/nfsd.8,v retrieving revision 1.17 diff -u -r1.17 nfsd.8 --- sbin/nfsd/nfsd.8 3 Sep 2010 10:08:22 -0000 1.17 +++ sbin/nfsd/nfsd.8 23 Dec 2012 16:58:45 -0000 @@ -91,6 +91,11 @@ A server should run enough daemons to handle the maximum level of concurrency from its clients, typically four to six. +The value can be altered using the +.Fl n +option, or the +.Va vfs.nfs.iothreads +.Xr sysctl 8 . .Pp .Nm listens for service requests at the port indicated in the

