+2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
+
+ * support/nfs/nfssvc.c(nfssvc): If /proc/fs/nfs/threads exists,
+ set number of threads by writing to there. This means it will
+ still work when the syscall interface goes away in 2.7.
+
2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
fumihiko kakuma <kakmy@mvh.biglobe.ne.jp>
#include "config.h"
+#include <unistd.h>
+#include <fcntl.h>
+
#include "nfslib.h"
int
nfssvc(int port, int nrservs)
{
struct nfsctl_arg arg;
+ int fd;
+
+ fd = open("/proc/fs/nfs/threads", O_WRONLY);
+ if (fd >= 0) {
+ /* 2.5+ kernel with nfsd filesystem mounted.
+ * Just write the number in.
+ * Cannot handle port number yet, but does anyone care?
+ */
+ char buf[20];
+ int n;
+ snprintf(buf, 20,"%d\n", nrservs);
+ n = write(fd, buf, strlen(buf));
+ close(fd);
+ if (n != strlen(buf))
+ return -1;
+ else
+ return 0;
+ }
arg.ca_version = NFSCTL_VERSION;
arg.ca_svc.svc_nthreads = nrservs;