Re: 2.6.18-rc5-mm1 unusual IRQ number for VIA device

From: Robert Hancock
Date: Tue Sep 05 2006 - 10:29:24 EST


Jay Cliburn wrote:
Nothing I've read about MSI so far indicates that an IRQ number greater than 255 is permissible, yet this device gets assigned an IRQ number of 8,410 when MSI is enabled. Booting 2.6.18-rc5-mm1 with pci=nomsi causes the device to be assigned IRQ 17 instead of 8410.

The problem with the large IRQ number is made manifest in Fedora's irqbalance program, which is run as an init script. An array is built in that program that's indexed by IRQ number, with a max of 255. When the program attempts to index element 8410, it segfaults.

Are IRQ numbers greater than 255 allowed with MSI?

I assume you're on x86-64 with CONFIG_NR_CPUS set to 255. In that case the max IRQ number is 256 + (32 * NR_CPUS) or 8416. The MSI interrupts will get assigned from highest IRQ to lowest, so you should expect to see such high numbers..

It appears that irqbalance's assumption that IRQ cannot exceed 255 is not valid on x86-64 (on i386 it is since NR_IRQS is 224).

--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from hancockr@xxxxxxxxxxxxx
Home Page: http://www.roberthancock.com/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/