Jan Echternach reported that on his system it8213 provokes the warning
"Unbalanced enable for IRQ 19" when probed at boot time.

The previous messages are logged at <http://bugs.debian.org/590327>.

On Sun, 2011-07-31 at 20:49 +0200, Jan Echternach wrote:
> On Fri, Jul 29, 2011 at 05:18:48PM +0200, Moritz Mühlenhoff wrote:
> > Does this still occur with current kernels?
> 
> Yes.  Here's a warning from kernel version 3.0.0-1:
> 
> [    1.984004] ------------[ cut here ]------------
> [    1.984009] WARNING: at 
> /build/buildd-linux-2.6_3.0.0-1-i386-ML66CU/linux-2.6-3.0.0/debian/build/source_i386_none/kernel/irq/manage.c:421
>  enable_irq+0x50/0x69()
> [    1.984011] Hardware name: EP45T-EXTREME
> [    1.984012] Unbalanced enable for IRQ 19
[...]

In the the list of PCI devices in the original report, I see:

> 00:1d.1 USB Controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB 
> UHCI Controller #2 [8086:3a35] (prog-if 00 [UHCI])
[...]
>       Interrupt: pin B routed to IRQ 19
[...]
> 05:07.0 IDE interface [0101]: Integrated Technology Express, Inc. IT8213 IDE 
> Controller [1283:8213] (prog-if 85 [Master SecO PriO])
[...]
>       Interrupt: pin A routed to IRQ 19

This is somewhat unusual in that the IDE controller will be sharing its
IRQ, but that's supposed to work.

However, the IDE core attempts to disable and enable the IRQ *before* it
allocates it.  If the UHCI driver then allocates the IRQ in the middle
of this, the IRQ manager will reset the disable count since the IRQ is
not yet shared!

This might be fixable by changing the IDE core to allocate the IRQ with
a dummy interrupt handler while probing.

Aside from that, maybe pata_it8213 is ready as a replacement for it8213
now?  (Kconfig still labels it as EXPERIMENTAL.)

Ben.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to