Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Mar 1999 17:47:38 +1030
From:      Greg Lehey <grog@lemis.com>
To:        Jesse <j@lumiere.net>, "Daniel C. Sobral" <dcs@newsguy.com>
Cc:        freebsd-net@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG
Subject:   Taking panic dumps (was: 3.1-STABLE dies on 40+ connects (resolved))
Message-ID:  <19990327174738.B425@lemis.com>
In-Reply-To: <Pine.BSF.4.05.9903251606080.1956-100000@leaf.lumiere.net>; from Jesse on Thu, Mar 25, 1999 at 04:09:44PM -0800
References:  <36FACE5B.D0926C2C@newsguy.com> <Pine.BSF.4.05.9903251606080.1956-100000@leaf.lumiere.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday, 25 March 1999 at 16:09:44 -0800, Jesse wrote:
>
>>> Thanks everybody for your help! FreeBSD is great and it's 80% about the
>>> community. Not that I didn't always know it. =)
>>
>> Notice that a core dump + kernel with symbols would still be very
>> useful to find *where* in our code is the bug.
>
> I asked in other messages if anyone still wanted me to do that. No one
> replied. Anyway, I'll do this at an off hour and get a core dump.

OK.  I really should put this in the FAQ, since it's really important.

1.  Build a kernel with debug symbols.  Assuming your config file is
    called MYKERNEL, do:
n
    cd /sys/i386/conf
    config -g MYCONFIG
    cd ../../compile/MYCONFIG
    make depend all
    cp kernel kernel.gdb
    strip -g kernel
    make install
    
2.  If you don't have the directory /var/crash, create it in a file
    system which has space for the dump (memory size) and the kernel
    (about 10 MB, 15 is safer).

3.  You *must* have a single swap area which is at least a little
    larger than physical memory.  You can have other swap areas as
    well, but for dumping you need one which will take the contents of
    memory and a little additional for headers (1 MB would be more
    than enough extra).  Assuming you have such a partition on
    /dev/da0s1b, add a line like this to /etc/rc.conf:

      dumpdev="/dev/da0s1b"		# Device name to crashdump to (if enabled).

    If you don't have an /etc/rc.conf, put it in
    /etc/defaults/rc.conf.

4.  Boot the new kernel.

There are a number of points to comment about:

1.  If you have the space (about 10 MB), you don't need to copy kernel
    to kernel.gdb and strip the original.  It doesn't buy you much,
    though, unless you have ddb installed, and that is rather painful
    to use.

2.  /etc/rc.conf and friends are still moving around and changing
    their relationships to each other.  This applies to 3.1-RELEASE.
    It doesn't apply exactly to previous or subsequent releases,
    though you should be able to figure out what's going on.

Greg
--
See complete headers for address, home page and phone numbers
finger grog@lemis.com for PGP public key


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




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