This patch changes the default NFS server to the new one, which was

referred to as the experimental server. It also adds a new command
line option "-o" to both mountd and nfsd that forces them to use the
old/regular NFS server. The "-e" option for these commands is now
a no-op, since the new server is the default. I will be committing rc
script and man changes soon. Discussed on freebsd-fs@.
This commit is contained in:
Rick Macklem 2011-04-24 00:06:56 +00:00
parent 9af3638096
commit 2a85df8ca0
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=220980
3 changed files with 25 additions and 17 deletions

View File

@ -22,6 +22,14 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 9.x IS SLOW:
machines to maximize performance. (To disable malloc debugging, run
ln -s aj /etc/malloc.conf.)
20110423:
The default NFS server has been changed to the new server, which
was referred to as the experimental server. If you need to switch
back to the old NFS server, you must now put the "-o" option on
both the mountd and nfsd commands. This can be done using the
mountd_flags and nfs_server_flags rc.conf variables until an
update to the rc scripts is committed, which is coming soon.
20110418:
The GNU Objective-C runtime library (libobjc), and other Objective-C
related components have been removed from the base system. If you

View File

@ -239,7 +239,7 @@ static int have_v6 = 1;
int v4root_phase = 0;
char v4root_dirpath[PATH_MAX + 1];
int run_v4server = 0;
int run_v4server = 1;
int has_publicfh = 0;
struct pidfh *pfh = NULL;
@ -296,13 +296,13 @@ main(int argc, char **argv)
else
close(s);
while ((c = getopt(argc, argv, "2deh:lnp:r")) != -1)
while ((c = getopt(argc, argv, "2deh:lnop:r")) != -1)
switch (c) {
case '2':
force_v2 = 1;
break;
case 'e':
run_v4server = 1;
/* now a no-op, since this is the default */
break;
case 'n':
resvport_only = 0;
@ -316,6 +316,9 @@ main(int argc, char **argv)
case 'l':
dolog = 1;
break;
case 'o':
run_v4server = 0;
break;
case 'p':
endptr = NULL;
svcport = (in_port_t)strtoul(optarg, &endptr, 10);
@ -350,9 +353,8 @@ main(int argc, char **argv)
};
/*
* If the "-e" option was specified OR only the nfsd module is
* found in the server, run "nfsd".
* Otherwise, try and run "nfsserver".
* Unless the "-o" option was specified, try and run "nfsd".
* If "-o" was specified, try and run "nfsserver".
*/
if (run_v4server > 0) {
if (modfind("nfsd") < 0) {
@ -360,8 +362,6 @@ main(int argc, char **argv)
if (kldload("nfsd") < 0 || modfind("nfsd") < 0)
errx(1, "NFS server is not available");
}
} else if (modfind("nfsserver") < 0 && modfind("nfsd") >= 0) {
run_v4server = 1;
} else if (modfind("nfsserver") < 0) {
/* Not present in kernel, try loading it */
if (kldload("nfsserver") < 0 || modfind("nfsserver") < 0)

View File

@ -88,7 +88,7 @@ int debug = 0;
pid_t children[MAXNFSDCNT]; /* PIDs of children */
int nfsdcnt; /* number of children */
int new_syscall;
int run_v4server = 0; /* Force running of nfsv4 server */
int run_v4server = 1; /* Force running of nfsv4 server */
int nfssvc_nfsd; /* Set to correct NFSSVC_xxx flag */
int stablefd = -1; /* Fd for the stable restart file */
int backupfd; /* Fd for the backup stable restart file */
@ -152,8 +152,8 @@ main(int argc, char **argv)
nfsdcnt = DEFNFSDCNT;
unregister = reregister = tcpflag = maxsock = 0;
bindanyflag = udpflag = connect_type_cnt = bindhostc = 0;
#define GETOPT "ah:n:rdtue"
#define USAGE "[-ardtue] [-n num_servers] [-h bindip]"
#define GETOPT "ah:n:rdtueo"
#define USAGE "[-ardtueo] [-n num_servers] [-h bindip]"
while ((ch = getopt(argc, argv, GETOPT)) != -1)
switch (ch) {
case 'a':
@ -189,7 +189,10 @@ main(int argc, char **argv)
udpflag = 1;
break;
case 'e':
run_v4server = 1;
/* now a no-op, since this is the default */
break;
case 'o':
run_v4server = 0;
break;
default:
case '?':
@ -216,9 +219,8 @@ main(int argc, char **argv)
}
/*
* If the "-e" option was specified OR only the nfsd module is
* found in the server, run "nfsd".
* Otherwise, try and run "nfsserver".
* Unless the "-o" option was specified, try and run "nfsd".
* If "-o" was specified, try and run "nfsserver".
*/
if (run_v4server > 0) {
if (modfind("nfsd") < 0) {
@ -226,8 +228,6 @@ main(int argc, char **argv)
if (kldload("nfsd") < 0 || modfind("nfsd") < 0)
errx(1, "NFS server is not available");
}
} else if (modfind("nfsserver") < 0 && modfind("nfsd") >= 0) {
run_v4server = 1;
} else if (modfind("nfsserver") < 0) {
/* Not present in kernel, try loading it */
if (kldload("nfsserver") < 0 || modfind("nfsserver") < 0)