boot-time nfs mount issues should be fixed now

Matthew Dillon dillon at apollo.backplane.com
Tue Apr 13 15:05:00 PDT 2004


    The symptoms are NFS mount failures reported on the console, but the
    NFS mount working just fine when executed manually after booting as
    completed.

    It turns out that the DNS resolver coupled with the use of short-form
    names in /etc/fstab was to blame for this.    e.g. leaf has this:

crater:/usr/src /usr/src        nfs     ro,bg           0       0
apollo:/FreeBSD /FreeBSD        nfs     ro,bg           0       0

    And sometimes /FreeBSD would not mount during booting.  It turns out
    that the network is sometimes not fully operational when the RCNG
    script gets to the NFS mounts and this causes the DNS resolver to fail.

    Normally one would expect the resolver to retry a few times and obtain
    a successful lookup.  However, when a shortform name like 'crater' is
    used the resolver winds up trying two hostnames 'crater.dragonflybsd.org.'
    and 'crater.'.  If the first lookup times out, but the second one does
    not, the resolver returns the 'definitive' host-not-found error from
    the second lookup when it really should return a try-again error from
    the first lookup.  The result is that the NFS mount fails because it
    thinks that it was given definitely a non-existant hostname.

    This problem can also cause weird failures to occur when the network
    is sporatic or the name servers you are using get overloaded.

    In anycase, I just committed a fix to the resolver (which hopefully
    won't break anything else).

						-Matt





More information about the Kernel mailing list