Subject: Re: Bummer - NetBSD 2.1 panic - si_refs - update
To: Donald Lee <MacPPC2@caution.icompute.com>
From: Michael Lorenz <macallan@netbsd.org>
List: port-macppc
Date: 01/31/2007 14:11:50
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

On Jan 31, 2007, at 00:37, Donald Lee wrote:

> One, at the end of the file, where the "${si}" gets put back in the
> pool, the operation is protected by "splvm()/splx()" rather than
> the msr ops that are now sprinkled in the code.  I thought the
> reason for the msrs was because the IPLs were unreliable.  Why
> are they OK here?

I had a further look at macppc's interrupt handling ( pretty much the 
last non-OpenPIC part I didn't mess with yet ) - first, splhigh doesn't 
block all interrupts, it explicitly allows IPL_SERIAL and I'm not quite 
sure what else, the hierarchy enforcement looks weird to say the least.

I think in a couple days I'll have something ready that makes 
interrupts on macppc behave as described in spl(9). If there's any 
additional documentation on this please let me know. I had a look at 
other archs' interrupt hierarchies ( sparc(64), shark, prep and a few 
others ) and they all differ from spl(9) in more or less creative ways, 
many appear to be derived from macppc. So which one is considered 
canonical if any?

have fun
Michael
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iQEVAwUBRcDp98pnzkX8Yg2nAQKYdQf9FbgcSSLGTkwo0IDnu1HWr1BVDe5KACen
DhWWfMeiP94AfO8iEod1GXLvEs5bTcEOYmt0ZqMTAlkKkrHMx2dvIz1cVMebtyc9
g5nUWHVxSWMq6VoJCbQe9003SHd3c6J/mpoZREuI2zvmkX94hq3Ps3XUBO1QTmgD
SW38GWJ8YTR8QLJlHTWZZjHb1LhMbbv5eMDr/GmVomJ48uUKSkXyiZdcg9hpx/gN
pvadPb8gHIm20n3kiOFSjVx1q4HrsiVeWTc78W+JbjtvYiVW4Besi3Q3yGq4k0GM
APldiOkGD9v8s4CIKKzL9ceZ/4ZoisAcsqNrlP6KAMao2Lw1ti0TBQ==
=5juI
-----END PGP SIGNATURE-----