From: Keith Owens <kaos@sgi.com>
To: linux-ia64@vger.kernel.org
Subject: Re: [Patch]IA64 kexec
Date: Tue, 14 Feb 2006 05:13:07 +0000 [thread overview]
Message-ID: <7424.1139893987@kao2.melbourne.sgi.com> (raw)
In-Reply-To: <1131406068.2524.15.camel@linux-znh>
Horms (on Tue, 14 Feb 2006 13:06:44 +0900) wrote:
>On Tue, Feb 14, 2006 at 08:17:35AM +1100, Keith Owens wrote:
>> Which raises a small problem. As of about 2.6.15, INIT is a
>> recoverable event. INIT _must_ be recoverable, because it can be sent
>> when an MCA occurs and one or more cpus was running with interrupts
>> disabled. For example, when the cpu that takes the MCA owns a disabled
>> spinlock that other cpus are waiting on. If INIT is not recoverable
>> then some MCAs that could be recovered also become unrecoverable, at
>> random.
>>
>> Since INIT is recoverable, pressing NMI gives you a stack trace for
>> each cpu, then the system resumes. This allows a user to see if the
>> system is making progress, albeit slowly, or if it really is stuck.
>> The downside of a recoverable INIT is that you cannot use it to take a
>> dump, or at least not the first time that NMI is issued. Unfortunately
>> there is no way to distinguish between an NMI where the user wants to
>> see what the system is doing and an NMI to take a dump. Nobody has
>> implemented the "Read Programmer's Mind" instruction yet.
>
>I sense pain. Looking over the code - very naievely - would it be
>possible to register an alternate INIT handler when kexecing.
Not a good idea, the INIT handler code is very closely tied to the
SAL/OS interface. But what kexec can do is to register itself on the
notify_die() chain, it will get called for multiple events including
DIE_INIT_SLAVE_ENTER, DIE_INIT_SLAVE_PROCESS, DIE_INIT_SLAVE_LEAVE,
DIE_INIT_MONARCH_ENTER, DIE_INIT_MONARCH_PROCESS and
DIE_INIT_MONARCH_LEAVE. That chain and the associated events is meant
for debuggers, crash dumpers and assorted RAS tools. See also the
DIE_MCA_* events on the same chain.
next prev parent reply other threads:[~2006-02-14 5:13 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-07 23:27 [Patch]IA64 kexec Zou Nan hai
2005-11-08 1:37 ` Zou, Nanhai
2006-02-13 8:06 ` Horms
2006-02-13 10:17 ` Horms
2006-02-13 17:26 ` Luck, Tony
2006-02-13 21:17 ` Keith Owens
2006-02-14 4:06 ` Horms
2006-02-14 4:11 ` Horms
2006-02-14 5:13 ` Keith Owens [this message]
2006-02-14 16:56 ` Khalid Aziz
2006-02-15 2:10 ` Horms
2006-02-15 2:40 ` Keith Owens
2006-02-15 3:12 ` Horms
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=7424.1139893987@kao2.melbourne.sgi.com \
--to=kaos@sgi.com \
--cc=linux-ia64@vger.kernel.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.