From owner-freebsd-hackers Thu Jul 25 08:02:21 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id IAA04444 for hackers-outgoing; Thu, 25 Jul 1996 08:02:21 -0700 (PDT) Received: from minnow.render.com (render.demon.co.uk [158.152.30.118]) by freefall.freebsd.org (8.7.5/8.7.3) with SMTP id IAA04429 for ; Thu, 25 Jul 1996 08:02:15 -0700 (PDT) Received: from localhost (dfr@localhost) by minnow.render.com (8.6.12/8.6.9) with SMTP id PAA25169; Thu, 25 Jul 1996 15:38:36 +0100 Date: Thu, 25 Jul 1996 15:38:35 +0100 (BST) From: Doug Rabson To: Dmitry Khrustalev cc: hackers@freefall.freebsd.org, hasty@rah.star-gate.com, John Fieber Subject: Re: NFS crash In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Wed, 24 Jul 1996, Dmitry Khrustalev wrote: > > Has anyone seen this problem? > > > > > I have a problem with nfs mounting a freebsd machine from a Sun. I > > > have set it up just like it says FreeBSD handbook. It lets the Sun > > > mount the freeBSD drive. It lets me cd to the mount point, but when I > > > do a "ls", the freeBSD machine crashes. Have you ever seen this > > > problem? Please give me a call. > > > The errorthat is left on the bsd machine before it crashes is: Panic: > > > ufs_ihashget:recursive lock not expected -- pid86 > > > > Yes. solaris 2.5 uses readdirplus and it is broken in freebsd. > Look at VOP_VGET in nfs_serv.c:2913. This patch should fix readdirplus: Index: nfs_serv.c =================================================================== RCS file: /home/ncvs/src/sys/nfs/nfs_serv.c,v retrieving revision 1.30 diff -u -r1.30 nfs_serv.c --- nfs_serv.c 1996/06/08 12:16:26 1.30 +++ nfs_serv.c 1996/07/25 14:34:18 @@ -2919,6 +2919,7 @@ nfsm_srvpostop_attr(getret, &at); return (0); } + vput(nvp); dirlen = len = NFSX_V3POSTOPATTR + NFSX_V3COOKIEVERF + 2 * NFSX_UNSIGNED; nfsm_reply(cnt); -- Doug Rabson, Microsoft RenderMorphics Ltd. Mail: dfr@render.com Phone: +44 171 251 4411 FAX: +44 171 251 0939