Changes between Version 5 and Version 6 of Troubleshooting

Show
Ignore:
Author:
nettings (IP: 80.139.199.223)
Timestamp:
03/27/09 14:11:19 (15 years ago)
Comment:

add brief note on interrupt sharing and /proc/interrupts

Legend:

Unmodified
Added
Removed
Modified
  • Troubleshooting

    v5 v6  
    7272In order to quickly find the relevant lines, either hit <END> and scroll back up to see the most recent messages, or type "/" (the seach commmand) and "1394" to look for lines about your !FireWire interface (the standard name of which is "IEEE 1394"). Hit <q> to quit. 
    7373 
     74== Check your interrupts == 
    7475 
     76If you want to achive really low latency, you need to make sure that the interrupt line (IRQ) for the IEEE 1394 port is not shared with another device under high load. To check this, do 
     77{{{ 
     78$ cat /proc/interrupts 
     79           CPU0 
     80  0:    1459348   IO-APIC-edge      timer 
     81  1:      32119   IO-APIC-edge      i8042 
     82  8:          1   IO-APIC-edge      rtc0 
     83  9:        420   IO-APIC-fasteoi   acpi 
     84 12:     357681   IO-APIC-edge      i8042 
     85 14:     378389   IO-APIC-edge      ata_piix 
     86 15:          0   IO-APIC-edge      ata_piix 
     87 16:    3606467   IO-APIC-fasteoi   uhci_hcd:usb1, yenta, i915@pci:0000:00:02.0, eth0, ohci1394 
     88 17:        710   IO-APIC-fasteoi   uhci_hcd:usb2, mmc0 
     89 18:        426   IO-APIC-fasteoi   uhci_hcd:usb3 
     90 19:      11119   IO-APIC-fasteoi   uhci_hcd:usb4, ehci_hcd:usb5 
     91 21:     203452   IO-APIC-fasteoi   ipw2200 
     92 22:     262623   IO-APIC-fasteoi   Intel ICH6 
     93 23:          0   IO-APIC-fasteoi   Intel ICH6 Modem 
     94NMI:          0   Non-maskable interrupts 
     95LOC:    1457733   Local timer interrupts 
     96RES:          0   Rescheduling interrupts 
     97CAL:          0   function call interrupts 
     98TLB:          0   TLB shootdowns 
     99TRM:          0   Thermal event interrupts 
     100SPU:          0   Spurious interrupts 
     101ERR:          0 
     102MIS:          0 
     103}}} 
     104The relevant line is the one containing the "ohci1394" driver. '''FIXME:''' ''What other modules are there? Does this apply to the new firewire stack as well?'' 
    75105 
     106As you can see, the interrupt is shared with a USB hub, a wireless interface, an ethernet interface and a cardbus slot (the latter is unavoidable, since it is a cardbus !FireWire card). With a setup such as this (common with notebooks), you should disable the wireless and wired networks and move essential USB gear to one of the other hubs. 
     107 
     108Kernels with low-latency patch allow each IRQ handler to be prioritised individually. Some people have reported success with this (google for Rui Nuno Capela's rtprio scripts), but this is definitely very, very advanced trickery and not for the faint of heart. 
     109