Dumpdev issue in 6.4-STABLE

Jeremy Chadwick freebsd at jdc.parodius.com
Fri Aug 6 23:04:20 UTC 2010


On Fri, Aug 06, 2010 at 03:37:37PM -0700, Mark Saad wrote:
> > Mark Saad wrote:
> >  > > wrote:
> >  > > > I then set in /boot/loader.conf 
> >  > > > 
> >  > > > dumpdev="/dev/da0s1b"
> >  > > 
> >  > > On 8-STABLE dumpdev should be defined in rc.conf(5). 
> >  > > Not sure about
> >  > > 6-STABLE offhand.
> >  > 
> >  > The box dies before init is started so dumpdev in
> > rc.conf is pointless. 
> > 
> > I'm afraid you can't set dumpdev from the loader.
> > 
> > In ancient times it was possible to hardcode the dumpdev
> > via the kernel configuration, but that option is long
> > gone, AFAIK.
> > 
> Oliver so how do I get a core file of what the kernel is doing ? What is the "new way" of doing this ?

Use of dumpdev in /etc/rc.conf is utilised by /etc/rc.d/dumpon.  This rc
script runs /sbin/dumpon, specifying the device, which tells the kernel
what device to dump stuff to using an ioctl() call for DIOCSKERNELDUMP.

There doesn't appear to be a way to make an ioctl call from within DDB.
I would say you're basically out of luck; someone on freebsd-hackers may
know of a secret way.  Otherwise I would say DDB needs to be extended to
provide a "dumpdev" command or something along those lines which would
do the ioctl() equivalent.

You can drop to DDB interactively by pressing Control-Alt-Escape.  You
can examine the system state from there, but even "call doadump"
probably won't work given that the kernel doesn't know what dump device
to use (re: the ioctl() call above).

-- 
| Jeremy Chadwick                                   jdc at parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |



More information about the freebsd-stable mailing list