From: Jack Steiner <steiner@sgi.com>
To: linux-ia64@vger.kernel.org
Subject: Re: Sending cpu 0 back to SAL slave loop
Date: Mon, 09 Oct 2006 15:09:22 +0000 [thread overview]
Message-ID: <20061009150922.GB26250@sgi.com> (raw)
In-Reply-To: <20061006203909.GA6500@sgi.com>
On Sun, Oct 08, 2006 at 05:37:04PM +1000, Keith Owens wrote:
> Matthew Wilcox (on Fri, 6 Oct 2006 14:44:43 -0600) wrote:
> >On Fri, Oct 06, 2006 at 03:39:10PM -0500, Jack Steiner wrote:
> >> For kexec, it is ESSENTIAL that all cpus except for the one doing
> >> the kexec be returned to the SAL slave loop. If this is not done, our
> >> chipset will misdirect IO interrupts on the newly exec'ed kernel.
> >
> >Could you do an IPI call to have CPU 0 do the kexec and have the CPU
> >that sent the IPI fall into the SAL slave loop instead?
>
> An IPI call will not work for MCA or INIT. Both of those drive all
> cpus into a state which has disabled interrupts.
We could modify mca.c so that slave cpus are brought out of the mca spin
loop and sent back to the SAL slave loop. Changes would be required to
the places in mca.c that spin on:
while (monarch_cpu != -1)
cpu_relax();
However, I don't think I like this approach. We should try to drive all
cpus (except for the one doing the kexec) back to the SAL slave loop.
Unfortunately, this will not be successful in all cases - especially ones
where the system has experienced a hardware failure.
We need to modify our PROM so that we can detect a kexec of a new kernel.
At the time of the kexec, cpus not in the slave loop cannot be the target
for future interrupts. I think this can be done.
-- jack
prev parent reply other threads:[~2006-10-09 15:09 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-10-06 20:39 Sending cpu 0 back to SAL slave loop Jack Steiner
2006-10-06 20:44 ` Matthew Wilcox
2006-10-07 2:16 ` Jack Steiner
2006-10-08 5:40 ` Zou, Nanhai
2006-10-08 7:37 ` Keith Owens
2006-10-09 15:09 ` Jack Steiner [this message]
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=20061009150922.GB26250@sgi.com \
--to=steiner@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox