Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Interrupt lockout



>> On hardclock entry, walk back up the stack far enough to find the PC
>> saved by the hardclock interrupt.  This should be immediately after
>> the relevant splx(); if you're lucky, this will [help].
> The only yucky thing is that I need to be sure I check the right
> stack... If this happens after a rei, then I'm in for some more
> headaches...

Well, if IPL was lowered by REI rather than by splx(), yeah, the PC you
see will be the one of the original interrupt.  That's an example of
what I was talking about when I said "if you're lucky". :)

It may will be an REI at least some of the time.  But since I don't
think any common interrupts come in at IPL 31, if the problematic cases
are REIs, there's something that's elevating IPL and then not lowering
it before doing the REI, which seems to me like a(nother) bug.

If it is something like that, you might be able to track it down by
instrumenting the interrupt handler trampolines to record which one the
most recent interrupt was, then checking that in hardclock.

/~\ The ASCII                             Mouse
\ / Ribbon Campaign
 X  Against HTML                mouse%rodents-montreal.org@localhost
/ \ Email!           7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B


Home | Main Index | Thread Index | Old Index