Date: Thu, 17 Apr 1997 09:30:02 -0700 (PDT) From: Thomas David Rivers <ponds!rivers@dg-rtp.dg.com> To: freebsd-bugs Subject: Re: kern/3304: NFS V2 readdir hangs Message-ID: <199704171630.JAA18888@freefall.freebsd.org>
index | next in thread | raw e-mail
The following reply was made to PR kern/3304; it has been noted by GNATS. From: Thomas David Rivers <ponds!rivers@dg-rtp.dg.com> To: ponds!freebsd.org!gpalmer, ponds!lakes.water.net!rivers Cc: ponds!freebsd.org!FreeBSD-gnats-submit Subject: Re: kern/3304: NFS V2 readdir hangs Date: Thu, 17 Apr 1997 12:03:42 -0400 (EDT) > > Thomas David Rivers wrote in message ID > <199704160209.WAA01541@lakes.water.net>: > > Mount a V2 NFS server (I've tried both Sunos 4.1.3 and HP/UX 9.05), > > go to a rather large directory and do "ls -l". The ls -l will hang > > in sbwait(). This apparently also needs a rather slow network > > for a reliable reproduction - that is, it's somewhat timing dependent. > > I recently did something similar (ls -l on a 16,000 file directory) > across NFS on a recent RELENG_2_2 box which was mounting /var/mail > from a 2.1.x based mail server. Worked fine. This was probably 2 or 3 > weeks ago... I'll try again if you like. Some more information I've just deduced. It appears that nfs_receive() calls soreceive() which calls sbwait() waiting on a UDP packet to be received.. That's fine. Then, another nfs_request() is issued; calling nfs_receive() which winds down to sbwait() as well. The key here is that both of these are waiting on the *same* address. Then, the udp packet from the first call is received; we wake up the *second* caller and get everything out-of-sync. With udp packets out-of-sync; we eventually get an error situation in nfs_reply() and indicate a "stale" server condition. I haven't yet determined how this is happening; but printf()s in my kernel indicate that's what's going on. That also explains how timing is important for this problem... - Dave Rivers -help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199704171630.JAA18888>
