From: Anton Vorontsov <avorontsov@ru.mvista.com>
To: Michael Ellerman <michael@ellerman.id.au>
Cc: Paul Mackerras <paulus@samba.org>,
Milton Miller <miltonm@bga.com>,
linuxppc-dev@ozlabs.org
Subject: Re: [PATCH 2/3] powerpc: Make default kexec/crash_kernel ops implicit
Date: Mon, 22 Dec 2008 03:11:07 +0300 [thread overview]
Message-ID: <20081222001107.GA26630@oksana.dev.rtsoft.ru> (raw)
In-Reply-To: <1229900922.8269.15.camel@localhost>
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:
> > 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
next prev parent reply other threads:[~2008-12-22 0:11 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-16 16:22 [PATCH 0/3] Kexec for PPC32 (6xx) machines Anton Vorontsov
2008-12-16 16:22 ` [PATCH 1/3] powerpc: Setup OF properties for ppc32 kexec Anton Vorontsov
2008-12-16 16:23 ` [PATCH 2/3] powerpc: Make default kexec/crash_kernel ops implicit Anton Vorontsov
2008-12-21 23:08 ` Michael Ellerman
2008-12-22 0:11 ` Anton Vorontsov [this message]
2008-12-23 0:15 ` Michael Ellerman
2008-12-16 16:23 ` [PATCH 3/3] powerpc: Remove default kexec/crash_kernel ops assignments Anton Vorontsov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20081222001107.GA26630@oksana.dev.rtsoft.ru \
--to=avorontsov@ru.mvista.com \
--cc=linuxppc-dev@ozlabs.org \
--cc=michael@ellerman.id.au \
--cc=miltonm@bga.com \
--cc=paulus@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.