Subject: Re: CG6 and serial port support questions
To: None <port-sparc@NetBSD.ORG>
From: der Mouse <mouse@Collatz.McRCIM.McGill.EDU>
List: port-sparc
Date: 03/21/1996 06:52:38
> The saves occur only if the register windows are full, which is true
> some percentage of the time depending on the number of windows in the
> CPU and other more-or-less random factors.

Hm, I had never thought of "the number of windows in the CPU" as a
"more-or-less random factor". :-)

> Ideally, the zs hardware interrupt handler should be written to run
> entirely within the trap window (see the audio interrupt handler for
> an example).  This is nontrivial,

Heh.  If nothing else, it means writing it entirely in assembly. :-/

> and would require moving L1-A and `break' handling to zssoft() (or
> some rather tricky coding to do L1-A a la a `regular' interrupt).  I
> believe SunOS does L1-A and break aborts in the software handler, but
> does not use a trap-window hardware handler.

So _that_ is why SunOS so often manages to go out to lunch in a way
that ignores L1-A!  I always wondered.

I would strongly recommend that nerve-pinch handling _not_ be moved to
the software interrupt handler; it's too easy to hang with the relevant
soft interrupt locked out.

					der Mouse

			    mouse@collatz.mcrcim.mcgill.edu