Date: Fri, 18 Apr 1997 10:30:03 -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: <199704181730.KAA19924@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!lakes.water.net!rivers, ponds!sat.t.u-tokyo.ac.jp!simokawa
Cc: ponds!freefall.freebsd.org!freebsd-gnats-submit
Subject: Re: kern/3304: NFS V2 readdir hangs
Date: Fri, 18 Apr 1997 13:04:18 -0400 (EDT)
>
> Hi,
>
> I'm not sure whether this will help you, but could you try the following
> patch? the latest change to nfs_socket.c was originally made by me.
> I have been worried about a rare case.
It would be a rare case I believe....
But - I did try your patch; it did not affect the problem. That is,
the hang still occurs. If you've had a chance to read it; I've posted
my current understanding of the problem to freebsd-hackers. I believe
it is caused by a nfs_lookup() call that calls nfs_request() before
the nfs_request() (which originated in readdirrpc()) has completed.
- Dave Rivers -
>
> /\ Hidetoshi Shimokawa
> \/ simokawa@sat.t.u-tokyo.ac.jp
> PGP public key: finger -l simokawa@sat.t.u-tokyo.ac.jp
>
> --- nfs_socket.c.orig Fri Oct 11 19:15:33 1996
> +++ nfs_socket.c Sat Apr 19 00:43:25 1997
> @@ -1490,6 +1490,12 @@
> slpflag = PCATCH;
> else
> slpflag = 0;
> +#if 1
> + if (!(*flagp & NFSMNT_RCVLOCK) && (rep->r_mrep != NULL)) {
> + printf("Oops! I found the bug :-)\n");
> + return (EALREADY);
> + }
> +#endif
> while (*flagp & NFSMNT_RCVLOCK) {
> if (nfs_sigintr(rep->r_nmp, rep, rep->r_procp))
> return (EINTR);
>
>
>
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199704181730.KAA19924>
