From: Matt Porter <porter@cox.net>
To: Brian Kuschak <bkuschak@yahoo.com>
Cc: linuxppc-embedded@lists.linuxppc.org
Subject: Re: 4xx critical exceptions
Date: Wed, 4 Dec 2002 17:11:53 -0700 [thread overview]
Message-ID: <20021204171152.A11934@home.com> (raw)
In-Reply-To: <20021204230047.98430.qmail@web40912.mail.yahoo.com>; from bkuschak@yahoo.com on Wed, Dec 04, 2002 at 03:00:47PM -0800
On Wed, Dec 04, 2002 at 03:00:47PM -0800, Brian Kuschak wrote:
<snip>
> The COMMON_PROLOG in head_4xx.S uses SPRG0,1 to
> temporarily save r20, r21 for scratch use. Problem is
> this prologue is used for both critical and
> non-critical interrupts. As I understand it, MSR[EE]
> is cleared for external interrupts, but MSR[CE] is
> not. If a critical interrupt occurs while handling a
> non-critical interrupt, the SPRG0,1 can be overwritten
> while handling the critical interrupt.
>
> I'm guessing we don't have any unused SPRGx registers
> to use here. I was thinking about temporarily
> disabling CE until saving SPRG0,1, but that can't be
> done without using at least one register, and none of
> them are saved at that point.
>
> Any ideas?
The linuxppc-2.5 tree has a (partial) implementation of critical
exceptions. The method used is to save the registers into a
region preallocated in head_*.S.
> P.S. BTW, is bk://ppc.bkbits.net/linuxppc_2_5 the
> right place for the latest 2.5 code?
That's a dead tree. You want bk://ppc.bkbits.net/linuxppc-2.5
Regards,
--
Matt Porter
porter@cox.net
This is Linux Country. On a quiet night, you can hear Windows reboot.
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
next prev parent reply other threads:[~2002-12-05 0:11 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-12-04 23:00 4xx critical exceptions Brian Kuschak
2002-12-05 0:11 ` Matt Porter [this message]
2002-12-06 9:22 ` Kenneth Johansson
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=20021204171152.A11934@home.com \
--to=porter@cox.net \
--cc=bkuschak@yahoo.com \
--cc=linuxppc-embedded@lists.linuxppc.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.