Thread (7 messages) 7 messages, 2 authors, 2008-12-23

Re: [PATCH 2/3] powerpc: Make default kexec/crash_kernel ops implicit

From: Anton Vorontsov <hidden>
Date: 2008-12-22 00:11:13

On Mon, Dec 22, 2008 at 10:08:42AM +1100, Michael Ellerman wrote:
On Tue, 2008-12-16 at 19:23 +0300, Anton Vorontsov wrote:
quoted
This patch removes need for each platform to specify default kexec and
crash kernel ops, thus effectively adds a working kexec support for most
boards.

Platforms that can't cope with default ops will explode in some weird
way (a hang or reboot is most likely), which means that the board's
kexec support should be fixed or blacklisted via dummy _prepare callback
returning -ENOSYS.
But where is the patch to do this?
The -ENOSYS dummy callback is a last resort thing to do when nobody
cares or it's impossible to fix the Kexec on some board. We don't
have any such boards (yet).
The chance of kexec working on some random machine that's never been
tested is pretty slim, every driver needs to be aware its hardware might
be in a weird state,
The boards setup isn't always static. The Kexec might work perfectly
well on a standalone board, but might hang with some weird PCI device
attached to it (think that it might need some PCI fixup on shutdown).

I think that a "Kexec tested to work on a particular board" term
just doesn't exist. It might work, but it might hang with other setup
on the *same* board.

But in practice the Kexec work on every 6xx board I have. And I have
pretty much of Freescale boards (almost all from the 83xx series),
and I don't think it's practical to add #ifdef CONFIG_KEXEC into the
every board file...

Thus I don't think that disabling Kexec by default is a good idea.

Plus, note that PowerPC port is the only one that disables Kexec
by default (all other arches permit Kexec by default).
so enabling it by default is not a good idea IMHO.
Why? A hang or plain/watchdog reboot is OK since kexec is as
dangerous as trying to boot another kernel using "reboot ->
u-boot -> new kernel" sequence -- it might not work, the new
kernel might not boot for some reason.

-- 
Anton Vorontsov
email: cbouatmailru@gmail.com
irc://irc.freenode.net/bd2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help