IRQ problems on IBM 850
Gabriel Paubert
paubert at iram.es
Thu Dec 9 20:14:06 EST 1999
On Wed, 8 Dec 1999, David Monro wrote:
>
> Sorry to reply so late, but I went on holiday.
>
> Gabriel Paubert wrote:
> >
> > On Thu, 4 Nov 1999, Hollis R Blanchard wrote:
> >
> [..]
> >
> > Using interrupt 13 is strange, to say the least. It was reserved for FPU
> > errors on x86 processors. In your case obviously the interrupts are
> > expected (since you have a timeout) but have stayed masked for some
> > reason. We have to find where this happens. Some code paths might have an
> > unbalanced enable/disable_irq but I suspect that it will be hard to find.
> >
>
> Umm. Possible data point which may help here - I cannot cause my machine
> to do anything silly unless I hit two interrupt sources at the same
> time. I can compile kernels on the IDE disk (irq 13) till the cows come
> home if I don't have the ethernet enabled and don't play with the mouse
> too much. If I enable the ethernet (irq 15 I think), or play with the
> mouse a lot (irq 12), sooner or later I die. My (very uneducated) guess
> is that it has something to do with getting two interrupts in a very
> short space of time. I guess I should try thrashing one of the lower 8
> interrupts (serial mouse I guess would do it) and see if that can cause
> problems, or whether it is restricted to the second controller.
Ok, you are definitely on something. The problem is that on my machines I
only ever use one of the high (8-15) interrupts: the mouse. All the other
are routed through the OpenPIC...
Now we have to find where and how these interrutps become masked, this is
likely a stupid blunder.
Could you replace your arch/ppc/kernel/{irq,i8259}.c by the ones included
in the attached tarball ?
It adds a line in /proc/interrupts to check the state of the 8259
registers:
[root at vcorr1 linux]# cat /proc/interrupts
CPU0
1: 4201 i8259 keyboard
2: 0 i8259 82c59 secondary cascade
4: 198 i8259 serial
12: 48 i8259 PS/2 Mouse
16: 0 OpenPIC 82c59 cascade
18: 4705191 OpenPIC DC21140 (eth0)
19: 160631 OpenPIC ncr53c8xx
BAD: 1
8259 IMR/ISR/IRR = efe9/0000/0040
^^^^
that one is interesting to see if some interrupts become masked
forever.
Gabriel.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testirq.tar.gz
Type: application/octet-stream
Size: 6569 bytes
Desc: Tarball to get more /proc info about i8259 state.
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/19991209/5e81cf1d/attachment.obj>
More information about the Linuxppc-dev
mailing list