From owner-freebsd-current Wed Oct 21 01:57:22 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id BAA02384 for freebsd-current-outgoing; Wed, 21 Oct 1998 01:57:22 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from nlsystems.com (nlsys.demon.co.uk [158.152.125.33]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id BAA02379 for ; Wed, 21 Oct 1998 01:57:19 -0700 (PDT) (envelope-from dfr@nlsystems.com) Received: from herring.nlsystems.com (herring.nlsystems.com [10.0.0.2]) by nlsystems.com (8.9.1/8.8.5) with SMTP id JAA21762; Wed, 21 Oct 1998 09:56:04 +0100 (BST) Date: Wed, 21 Oct 1998 09:56:04 +0100 (BST) From: Doug Rabson To: Eric Haug cc: current@FreeBSD.ORG Subject: Re: nfs panic in free() In-Reply-To: <199810201633.LAA06373@mnw.eas.slu.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Tue, 20 Oct 1998, Eric Haug wrote: > Hi all, > I am having a repeatable panic in the nfs server code. > I have a -g compile kernel and a vmcore file. > dmesg output included > Should this be sent via send-pr? > Anyone else seeing this sort of nfs bug? > > Another problem that this system has: > The Promise card has the prom removed, cause the system will not > recognize the disks connected to it when the prom is in there. > I believe that this results in the disk access timing being off > so that transfers are about half of what they could be. > > The MBoard is a Matsonic MS6260S running at system clock of 100MHz. > The CPU is rated for more than 300 MHz. i.e. the system > is not overclocked. Could you test this fix (thanks for the stacktrace it made it pretty easy to see what was going on): Index: nfs_socket.c =================================================================== RCS file: /home/ncvs/src/sys/nfs/nfs_socket.c,v retrieving revision 1.46 diff -u -r1.46 nfs_socket.c --- nfs_socket.c 1998/09/29 22:33:05 1.46 +++ nfs_socket.c 1998/10/21 08:55:41 @@ -2232,7 +2232,9 @@ nd->nd_dpos = mtod(m, caddr_t); error = nfs_getreq(nd, nfsd, TRUE); if (error) { - FREE(nam, M_SONAME); + if (nam) { + FREE(nam, M_SONAME); + } free((caddr_t)nd, M_NFSRVDESC); return (error); } -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 181 951 1891 Fax: +44 181 381 1039 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message