gmirror / crash dumps
Kamigishi Rei
spambox at haruhiism.net
Fri Jul 31 08:56:04 UTC 2009
Anton Shterenlikht wrote:
>>> 4) I have the following in my 7-stable kernel
>>> The long and the short of it is I don't get any dumps.
>>> I read somewhere that you can't dump onto a gmirror device.
>>>
>> That is incorrect, but I don't know the cause of your problem. I run
>> nothing but gmirror and dumps happen here.
>>
> I was also told that
> "you won't get a valid dump if your dumpdev
> is on a GEOM_MIRROR device"
>
On 7.x, you have a 'legal' way to run gmirror -v prefer before savecore
is run.
In -current, the corresponding rc file (alas, I forgot its name) is removed.
I tried adding "gmirror -v prefer /dev/mirror0" to savecore rc.d file,
but to no such luck.
The problem here is the order of startup for the drives inside the
mirror; the first drive in the array that started during the boot when
the panic occurred has to be the preferred device during savecore - and
when this condition is met, you will get a valid dump.
i.e. let's assume that the system boots like
GEOM_MIRROR: Device gm0: provider ada0 detected.
GEOM_MIRROR: Device gm0: provider ada0 activated.
GEOM_MIRROR: Device gm0: provider ada1 detected.
GEOM_MIRROR: Device gm0: provider ada1 activated.
GEOM_MIRROR: Device gm0: provider mirror/mirror0 launched.
This makes us think that ada0 is the first drive to launch. Therefore,
it's the drive where the dump will be saved during a panic.
So we add
gmirror configure -v prefer /dev/mirror/mirror0 /dev/ada0 (correct my
syntax if I'm wrong here; tried it a month ago)
to /etc/rc.d/savecore right before the savecore call.
We do stuff, configure, build kernels, rebuild 'em, etc, reboot, and the
system comes up
GEOM_MIRROR: Device gm0: provider ada1 detected.
GEOM_MIRROR: Device gm0: provider ada1 activated.
GEOM_MIRROR: Device gm0: provider ada0 detected.
GEOM_MIRROR: Device gm0: provider ada0 activated.
GEOM_MIRROR: Device gm0: provider mirror/mirror0 launched.
without us noticing.
And that's it; if it panics now, savecore won't save the crash dump
because ada0 doesn't have it.
--
Kamigishi Rei
KREI-RIPE
More information about the freebsd-current
mailing list