can i "kexec" a running f9 system to a new kernel?
Robert P. J. Day
rpjday at crashcourse.ca
Sun Jul 13 12:48:59 UTC 2008
On Sun, 13 Jul 2008, Tom Horsley wrote:
> On Sun, 13 Jul 2008 06:26:06 -0400 (EDT)
> "Robert P. J. Day" <rpjday at crashcourse.ca> wrote:
>
> > quite simply, if i have a running f9 system, can i configure and
> > build a new (relocatable, for convenience) kernel and just kexec
> > over to it?
>
> I believe the running system needs to have kexec support built
> into the kernel, so the more fundamental question is: Does the F9
> kernel have kexec? Looking at /boot/config-2.6.25.9-76.fc9.x86_64
> on my F9 partition, I see CONFIG_KEXEC=y, so it looks like the
> support is there in the kernel, ...
that part i've verified already, but it's not clear if you *need*
any other kernel functionality to be able to "kexec" out of the
running kernel. NOTE: i'm talking about functionality required in
the kernel you are kexec'ing ***from***. you can configure a new
kernel to be relocatable but, as i read it, that would be a config
option you might choose for the kernel you are kexec'ing *to*.
so, a two-part question:
1) is the current f9 kernel fully equipped for kexec? and, AFAICT, it
would seem to be, based simply on CONFIG_KEXEC=y. that would seem to
be sufficient, yes? (it's also configured to be relocatable but i
don't think that's a necessity.)
2) what are the *required* config options for building a new kernel
that you can kexec *to* from the current kernel?
> but I don't see any userland kexec tools to start the reboot process
> from the command line, perhaps there is some rpm you need to install
> to get those?
# yum install kexec-tools
> As far as the actual booting goes, I don't see anything to be
> concerned about. The kexec stuff is exactly like a hardware
> reboot, it just bypasses the painfully slow process of having
> the system BIOS run all the POST nonsense, read the boot loader,
> and the boot loader getting the kernel started. It is just
> like going directly to the boot loader getting the kernel started.
> I'm not even sure why it took so many years for someone to
> think of it :-). I think some linux distros have already switched
> their "reboot" command to use it.
which still doesn't clarify if i can do it. from the current git
kernel source tree, i've built a new kernel and initrd that i've
verified boots *normally* (not with full functionality since i don't
care about that, i just want a good boot.)
for that new kernel, all i've verified is that it's relocatable.
does it *require* anything else? AFAICT, it doesn't even need "kexec"
functionality if it's going to be used only as the *destination* of a
"kexec" call.
so ... what's the story? has anyone been doing this? and how?
i'll give it a shot, and i'll report back.
rday
--
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry:
Have classroom, will lecture.
http://crashcourse.ca Waterloo, Ontario, CANADA
========================================================================
More information about the fedora-list
mailing list