Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Oct 1995 18:46:50 -0500 (CDT)
From:      mikebo@tellabs.com
To:        hackers@freebsd.org
Cc:        bugs@freebsd.org, mikebo (Mike Borowiec)
Subject:   2.1.0-951020-SNAP: Major bug in NFS again!
Message-ID:  <199510242346.SAA13180@sunc210.tellabs.com>

next in thread | raw e-mail | index | archive | help
Greetings -
There is a major bug somewhere in the bowels of RPC or NFS...
When the hacks were backed out of /usr/src/lib/libc/rpc/clnt_udp.c
a couple months ago, I expected NFS to multi-homed servers to work again -
it doesn't! While the NFS mount works OK, subsequent accesses to the
filesystem (a "df" for example) lock up the session...

The following is Solaris snoop output which shows the problem. TOYBOX
is running 2.1.0-951020-SNAP and TELLABK (aka SUNK) is a multi-homed
server running SunOS 4.1.3 and "routed -q". First we do the mount:

# mount tellabk:/export/home/tellabk-4 /usr/home

      toybox -> tellabk      PORTMAP C GETPORT prog=100003 (NFS) vers=2 proto=UDP
        sunk -> toybox       PORTMAP R GETPORT port=2049
      toybox -> tellabk      PORTMAP C GETPORT prog=100005 (MOUNT) vers=1 proto=UDP
        sunk -> toybox       PORTMAP R GETPORT port=737
      toybox -> tellabk      MOUNT C Mount /export/home/tellabk-4
        sunk -> toybox       MOUNT R Mount OK F=075B

Looks like the mount completed OK, even though the replies came from SUNK,
TELLABK's alter-ego. So let's do a "df":
# df
      toybox -> tellabk      NFS C STATFS FH=075B
        sunk -> toybox       NFS R STATFS OK
      toybox -> sunk         ICMP Destination unreachable (Bad port)
      toybox -> tellabk      NFS C STATFS FH=075B (retransmit)
        sunk -> toybox       NFS R STATFS OK
      toybox -> sunk         ICMP Destination unreachable (Bad port)
...
... ad infinitum ...

As you can see, TOYBOX seems to be expecting the STATFS response from
TELLABK, not its SUNK alter ego, and complains by sending ICMP Dest
Unreachables. At this point, the session is locked up and "df" can
never be killed - it is stuck in the kernel.

Granted, most users won't be affected by this problem - but for me, this
is a show stopper supreme - the single biggest problem I had with 2.0.5R.
Because of it, I cannot use automounter at all and any NFS is crippled.

I will gladly assist in any way I can to resolve this... work nights,
weekends, whatever.... Please don't press this bug into the 2.1 CDs!
- Mike
-- 
--------------------------------------------------------------------------
Michael Borowiec   -   mikebo@tellabs.com   -   Tellabs Operations Inc.
Senior Member of Technical Staff                4951 Indiana Avenue, MS 63
708-512-8211  FAX: 708-512-7099                 Lisle, IL  60532  USA
--------------------------------------------------------------------------



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