Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Sep 2009 18:55:05 -0400 (EDT)
From:      Rick Macklem <rmacklem@uoguelph.ca>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        svn-src-head@FreeBSD.org, rmacklem@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, jhb@FreeBSD.org
Subject:   Re: svn commit: r197298 - head/sbin/mount_nfs
Message-ID:  <Pine.GSO.4.63.0909201834020.7237@muncher.cs.uoguelph.ca>
In-Reply-To: <20090920.155347.-675685342.imp@bsdimp.com>
References:  <4AB495DD.1010006@FreeBSD.org> <20090919.230053.58383965.imp@bsdimp.com> <Pine.GSO.4.63.0909201722330.22125@muncher.cs.uoguelph.ca> <20090920.155347.-675685342.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sun, 20 Sep 2009, M. Warner Losh wrote:

> In message: <Pine.GSO.4.63.0909201722330.22125@muncher.cs.uoguelph.ca>
>            Rick Macklem <rmacklem@uoguelph.ca> writes:
> :
> :
> : On Sat, 19 Sep 2009, M. Warner Losh wrote:
> :
> : > :
> : > : Hmm, it might actually be nice to be able to change those at some point
> : > : as well.  I have looked at this in the past and it is quite deeply
> : > : buried in libc. :-/
> : >
> : > What's the benefit for forcing a tcp connection for the portmapper
> : > RPCs?  They just happen once at startup...
> : >
Just fyi, I just looked at what the "competition" does and was a
bit surprised at what I found:

Linux (not really current system):
- starts out talking to Portmapper over TCP and gets a dump of the
   other machine's portmap list, then switches to UDP to get the port#s
   for Mount and NFS, even if "tcp" was specified on the mount.
- Uses UDP for both Mount and NFS by default, but switches to using
   TCP for both when "tcp" is specified.
(As noted, this was a rather old Linux system, so I wouldn't be
  surprised if this has changed/is different for other distros.)

Solaris10:
- Always uses UDP for Portmapper and Mount, no matter what is specified
   on the mount command.
- Uses TCP for NFS by default of UDP if "proto=udp" is specified as a
   mount option.

I was surprised that Solaris10 did this.

I've also noticed that the "mntudp" option doesn't do what the man
page says it does. The man page indicates that it forces the use of
UDP for Mount, even when TCP is used for NFS (like Solaris10 does
by default). However, the current mount_nfs.c switches to UDP for
both Mount and NFS when "mntudp" is specified. (It was changed to
that behaviour by r180435.

It would be nice to have it so that a default mount without
"udp" nor "tcp" specified doesn't create the unusable mount
point for a server that is UDP only, as reported by the email
to freebsd-stable on Sep. 11 with subject "NFS issues on 8.0-BETA4.
r197298 did that, but made it "less Solaris10 compatible".

I tend to like being Solaris compatible, but I'm not sure if that
makes sense for this? rick






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.63.0909201834020.7237>