Re: smp and irq conflict

From: Robert Hancock
Date: Thu Feb 01 2007 - 18:33:34 EST


Lapo TIN wrote:
Dear all,
I have a problem with IRQs.

My pc has a CPU PentiumD945 (dual core) and a 2.6.19smp kernel.
I have two video acquisition board (four bt8t8 each) in the only two pci
slots of my motherboard. Thus I have a total of 8 bttv modules that are
working together, and the /proc/interrupts is as follows:
# cat /proc/interrupts
CPU0 CPU1
0: 13575 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
4: 11 0 IO-APIC-edge serial
8: 1 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
14: 22286 0 IO-APIC-edge ide0
17: 7073 2097 IO-APIC-fasteoi uhci_hcd:usb5, eth0
18: 2525 0 IO-APIC-fasteoi bttv0, bttv7
19: 2829 0 IO-APIC-fasteoi bttv1, bttv4
20: 2526 0 IO-APIC-fasteoi bttv2, bttv5
21: 2226 0 IO-APIC-fasteoi bttv3, bttv6
22: 2 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb4
23: 86 0 IO-APIC-fasteoi uhci_hcd:usb2
24: 0 0 IO-APIC-fasteoi uhci_hcd:usb3
NMI: 0 0
LOC: 13484 13502
ERR: 0
MIS: 0
You can see that IRQ18 is shared between bttv0 and bttv7, IRQ19 between
bttv1 and bttv4 and so on.

Sometimes it crashes. It seems a matter of conflict in IRQ.
With only one video board everything is ok, but with two, they shared irq
and something goes wrong... How can I tell to the kernel to not to share the IRQ for these boards ?
I think (I don't know if I'm right) that this could be the problem.

Usually the IRQ routing is hard-wired on the motherboard, so there's no way to avoid the devices sharing IRQs. Unless the driver is badly buggy this should not cause problems anyway.

What kind of video bit rate are you capturing? 8 video capture chips is a pretty heavy load on the PCI bus, maybe something just gets overwhelmed?

--
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/