Re: [RFC] x86 ELF bootable kernels/Linux booting Linux/LinuxBIOS

Andrew Morton (akpm@zip.com.au)
Wed, 30 Jan 2002 13:19:17 -0800


"Eric W. Biederman" wrote:
>
> A kernel fix to do proper SMP shutdown so that you can kexec on a SMP kernel

Oh man, you rock. I spent about ten hours last weekend
trying to teach 2-kernel-monte to do this. But the damn
XT clock refused to deliver interrupts to the secondary
kernel when the primary had local APCI enabled :(

On uniprocessor, you can type `sudo monte /boot/bzImage'
and get to `decompressing linux' in two seconds flat. (Having
journalling filesystems rather helps with this trick). It's
lovely.

> The biggest issue I have had is
> with the kernel not properly shutting down devices.

Monte just disables all busmastering on the PCI devices...

> In the short term shutting down devices is trivially handled by
> umounting filesystems, downing ethernet devices, and calling the
> reboot notifier chain. Long term I need to call the module_exit
> routines but they need a little sorting out before I can use them
> during reboot. In particular calling any module_exit routing that clears
> pm_power_off is a no-no.

module_exit() routines for statically-linked drivers often
don't exist - they're in .text.exit. I guess you can just
move .text.exit out of the /DISCARD/ section in vmlinux.lds.
Also, take a look at user-mode-linux's do_exitcalls()
implementation - there's no clear reason why that shouldn't
be mainstreamed.

It would be convenient to be able to directly boot a bzImage,
but I guess elf is workable.

Great work, and thanks! I look forward to 2-second SMP
reboots.

-
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/