[Techtalk] Interrupt disabled

Almut Behrens almut-behrens at gmx.net
Thu Jan 20 06:48:08 EST 2005


On Wed, Jan 19, 2005 at 12:43:55AM +0000, David Sumbler wrote:
> Can anyone shed any light on this?
> 
> This evening, while working (ahem!) on the computer, I suddenly got a
> message on the screen saying that IRQ 4 was being disabled.
> 
> The end of dmesg output shows:
> 
> irq 4: nobody cared (try booting with the "irqpoll" option.
> (...)

(note: I'm no kernel guru, so apply appropriate skepticism...)

Maybe your dangling cable is picking up noise from the environment...

As you probably know, an IRQ (interrupt request) is the way for an
external device to tell the kernel "I need your attention, I have/want
data".  To handle this situation properly, a coordinated sequence of
steps needs to be performed.

In case of random line noise being fed into some interface, it might
electrically trigger interrupts[1], but there would be no coordinated
communication between kernel/driver and the external device (simply
because there's no external device attached...), and interrupts would
count as unhandled. When enough of those have accumulated, the kernel
prints the warning you're seeing.


> handlers:
> [<c0237da3>] (serial8250_interrupt+0x0/0x215)
> Disabling IRQ #4

This is somewhat like if you were getting bogus calls on the phone:
The phone rings, you pick up, but there's no one at the other end...
Maybe you'll do that a couple of times, but then you'll most likely
decide to just switch off the phone, to be able to get on undisturbed
with whatever else you were doing... :)

A comment from the kernel source (kernel/irq/spurious.c) provides a few
more details:

/*
 * If 99,900 of the previous 100,000 interrupts have not been handled
 * then assume that the IRQ is stuck in some manner. Drop a diagnostic
 * and try to turn the IRQ off.
 *
 * (The other 100-of-100,000 interrupts may have been a correctly
 *  functioning device sharing an IRQ with the failing one)


> 
> Looking at /proc/interrupts I see that IRQ 4 is assigned to "serial".
> The only thing I have connected to a serial port is a lead that I use
> to connect occasionally to my Psion 5mx hand-held computer.  It was
> not connected at the time, although the lead was still plugged into
> the computer.

Before digging any deeper, I'd first remove that cable, and see whether
it happens again...

Cheers,
Almut


[1] Whether that actually does happen, depends on a variety of hardware
factors (like high electrical impedance of the inputs), and your
environment (sufficient magnitude of the noise signal picked up, due
to long/unshielded wires, nearby noise sources like transformers or
switched power supplies, or whatever).  Even though this is rather
unlikely to happen, it's not totally impossible, theoretically...



More information about the Techtalk mailing list