Subject: Re: arm32 kernel crashes
To: None <port-arm32@netbsd.org>
From: David Forbes <dmf20@hermes.cam.ac.uk>
List: port-arm32
Date: 12/15/1998 20:12:41
> The code in irq_entry that causes the original fault is in
> footbridge/footbridge_irq.S, in the section concerned with finding the
> highest IPL.
>
> mov r9, #(_SPL_LEVELS - 1)
> ldr r7, Lspl_masks
teq r8, #0
moveq r9, #0
beq Lfound_highest_ipl
> Lfind_highest_ipl:
> ldr r2, [r7, r9, lsl #2] * Fault here
> tst r8, r2
> subeq r9, r9, #1
> beq Lfind_highest_ipl
Lfound_highest_ipl
I've been fiddling again, and have done the obvious thing here and
inserted the code above to handle the case r8=0. I'm not sure what r9
should be set to in this case, but it seems to be a bit happier. I've had
my serial terminal running for 30 mins now with no sign of disfunction.
I don't know if it'll fix the problems other people have had with
interrupts.
Cheers,
David.