Messages in this thread Patch in this message | | | Date | Tue, 21 Jan 2003 11:17:58 -0500 (EST) | From | David Mansfield <> | Subject | ACPI munges IRQ routing in 2.5.58 on HP3000 U3 (fwd) |
| |
Hi Andrew, lists,
(2.5.59 has the same problem, I've just tested)
After extensive help from Justin Gibbs (the aic7xxx driver maintainer) I've determined that the reason the SCSI subsystem fails in 2.5.58 is that the IRQ routing setup by ACPI is wrong. Quoting Justin after sending him verbose debugging from his driver:
<quote> The output has confirmed what I had suspected. The card is not getting interrupts. My guess is that some change in the interrupt routine code in 2.5.X is not working correctly on your system. To completely verify that, you could try dropping in 6.2.27 into a 2.4.20aa2 kernel. [snip] You might also try to influence interrupt routing in your system by playing around with the "apic" and "acpi" kernel options. </quote>
I didn't try 2.4, but *did* try booting with pci=noacpi which solved the problem for me.
I've attached the bootup log with and without the pci=noacpi option (gzipped) so you can see the differences.
Here's the relevant 'diff' of the two files:
--- tarsierx-bootlog.txt 2003-01-16 16:02:10.000000000 -0500 +++ tarsierx-bootlog-noacpi.txt 2003-01-20 16:53:27.000000000 -0500 @@ -47,10 +47,10 @@ ACPI: INT_SRC_OVR (bus[0] irq[0xb] global_irq[0xb] polarity[0x3] trigger[0x3]) Using ACPI (MADT) for SMP configuration information Building zonelist for node : 0 -Kernel command line: ro root=/dev/md2 console=ttyS0,9600n8 +Kernel command line: ro root=/dev/md2 pci=noacpi Initializing CPU#0 PID hash table entries: 4096 (order 12: 32768 bytes) -Detected 866.414 MHz processor. +Detected 866.689 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 1712.12 BogoMIPS Memory: 2071476k/2097088k available (2368k kernel code, 24480k reserved, 718k data, 320k init, 1179584k highmem) @@ -62,6 +62,7 @@ -> /root CPU: L1 I cache: 16K, L1 D cache: 16K CPU: L2 cache: 256K +CPU: After generic, caps: 0383fbff 00000000 00000000 00000000 Intel machine check architecture supported. Intel machine check reporting enabled on CPU#0. Enabling fast FPU save and restore... done. @@ -79,25 +80,105 @@ masked ExtINT on CPU#1 ESR value before enabling vector: 00000000 ESR value after enabling vector: 00000000 -Calibrating delay loop... 1728.51 BogoMIPS +Calibrating delay loop... 1732.60 BogoMIPS CPU: L1 I cache: 16K, L1 D cache: 16K CPU: L2 cache: 256K +CPU: After generic, caps: 0383fbff 00000000 00000000 00000000 Intel machine check architecture supported. Intel machine check reporting enabled on CPU#1. CPU1: Intel Pentium III (Coppermine) stepping 06 -Total of 2 processors activated (3440.64 BogoMIPS). +Total of 2 processors activated (3444.73 BogoMIPS). ENABLING IO-APIC IRQs +init IO_APIC IRQs + IO-APIC (apicid-pin) 2-0, 2-2, 3-0, 3-1, 3-2, 3-3, 3-4, 3-5, 3-6, 3-7, 3-8, 3-9, 3-10, 3-11, 3-12, 3-13, 3-14, 3-15 not connected. ..TIMER: vector=0x31 pin1=-1 pin2=0 ...trying to set up timer (IRQ0) through the 8259A ... ..... (found pin 0) ...works. +number of MP IRQ sources: 15. +number of IO-APIC #2 registers: 16. +number of IO-APIC #3 registers: 16. testing the IO APIC....................... +IO APIC #2...... +.... register #00: 02000000 +....... : physical APIC id: 02 +....... : Delivery Type: 0 +....... : LTS : 0 +.... register #01: 000F0011 +....... : max redirection entries: 000F +....... : PRQ implemented: 0 +....... : IO APIC version: 0011 +.... register #02: 00000000 +....... : arbitration: 00 +.... IRQ redirection table: + NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect: + 00 001 01 0 0 0 0 0 1 1 31 + 01 001 01 0 0 0 0 0 1 1 39 + 02 000 00 1 0 0 0 0 0 0 00 + 03 001 01 0 0 0 0 0 1 1 41 + 04 001 01 0 0 0 0 0 1 1 49 + 05 001 01 1 1 0 1 0 1 1 51 + 06 001 01 0 0 0 0 0 1 1 59 + 07 001 01 0 0 0 0 0 1 1 61 + 08 001 01 0 0 0 0 0 1 1 69 + 09 001 01 1 1 0 1 0 1 1 71 + 0a 001 01 1 1 0 1 0 1 1 79 + 0b 001 01 1 1 0 1 0 1 1 81 + 0c 001 01 0 0 0 0 0 1 1 89 + 0d 001 01 0 0 0 0 0 1 1 91 + 0e 001 01 0 0 0 0 0 1 1 99 + 0f 001 01 0 0 0 0 0 1 1 A1 +IO APIC #3...... +.... register #00: 03000000 +....... : physical APIC id: 03 +....... : Delivery Type: 0 +....... : LTS : 0 +.... register #01: 000F0011 +....... : max redirection entries: 000F +....... : PRQ implemented: 0 +....... : IO APIC version: 0011 +.... register #02: 0F000000 +....... : arbitration: 0F +.... IRQ redirection table: + NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect: + 00 000 00 1 0 0 0 0 0 0 00 + 01 000 00 1 0 0 0 0 0 0 00 + 02 000 00 1 0 0 0 0 0 0 00 + 03 000 00 1 0 0 0 0 0 0 00 + 04 000 00 1 0 0 0 0 0 0 00 + 05 000 00 1 0 0 0 0 0 0 00 + 06 000 00 1 0 0 0 0 0 0 00 + 07 000 00 1 0 0 0 0 0 0 00 + 08 000 00 1 0 0 0 0 0 0 00 + 09 000 00 1 0 0 0 0 0 0 00 + 0a 000 00 1 0 0 0 0 0 0 00 + 0b 000 00 1 0 0 0 0 0 0 00 + 0c 000 00 1 0 0 0 0 0 0 00 + 0d 000 00 1 0 0 0 0 0 0 00 + 0e 000 00 1 0 0 0 0 0 0 00 + 0f 000 00 1 0 0 0 0 0 0 00 +IRQ to pin mappings: +IRQ0 -> 0:0 +IRQ1 -> 0:1 +IRQ3 -> 0:3 +IRQ4 -> 0:4 +IRQ5 -> 0:5 +IRQ6 -> 0:6 +IRQ7 -> 0:7 +IRQ8 -> 0:8 +IRQ9 -> 0:9 +IRQ10 -> 0:10 +IRQ11 -> 0:11 +IRQ12 -> 0:12 +IRQ13 -> 0:13 +IRQ14 -> 0:14 +IRQ15 -> 0:15 .................................... done. Using local APIC timer interrupts. calibrating APIC timer ... -..... CPU clock speed is 866.0131 MHz. -..... host bus clock speed is 133.0250 MHz. +..... CPU clock speed is 866.0108 MHz. +..... host bus clock speed is 133.0247 MHz. checking TSC synchronization across 2 CPUs: passed. Starting migration thread for cpu 0 Bringing up 1 @@ -126,6 +207,7 @@ ACPI: Using IOAPIC for interrupt routing ACPI: PCI Root Bridge [PCI0] (00:00) PCI: Probing PCI hardware (bus 00) +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] ACPI: PCI Interrupt Link [LNKU] (IRQs 5, disabled) ACPI: PCI Interrupt Link [LNK0] (IRQs 3 4 5 7 10 11 12 14 15, enabled at IRQ 9) ACPI: PCI Interrupt Link [LNK1] (IRQs 3 4 5 7 *10 11 12 14 15) @@ -145,6 +227,8 @@ ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 7 10 11 12 14 15, disabled) ACPI: PCI Root Bridge [PCI1] (00:03) PCI: Probing PCI hardware (bus 03) +ACPI: PCI Interrupt Routing Table [\_SB_.PCI1._PRT] +ACPI: PCI Interrupt Routing Table [\_SB_.PCI1.PCI2._PRT] block request queues: 128 requests per read queue 128 requests per write queue @@ -152,19 +236,15 @@ enter congestion at 15 exit congestion at 17 SCSI subsystem driver Revision: 1.00 -ACPI: PCI Interrupt Link [LNKU] enabled at IRQ 5 -ACPI: PCI Interrupt Link [LNK6] enabled at IRQ 11 -ACPI: PCI Interrupt Link [LNK7] enabled at IRQ 10 -ACPI: PCI Interrupt Link [LNK8] enabled at IRQ 11 -ACPI: PCI Interrupt Link [LNK9] enabled at IRQ 10 -ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 11 -ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 10 -ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 5 -ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11 -ACPI: PCI Interrupt Link [LNKE] enabled at IRQ 10 -ACPI: PCI Interrupt Link [LNKF] enabled at IRQ 5 -PCI: Using ACPI for IRQ routing -PCI: if you experience problems, try using option 'pci=noacpi' or even 'acpi=off' +PCI: Probing PCI hardware +PCI: Using IRQ router ServerWorks [1166/0200] at 00:0f.0 +PCI BIOS passed nonexistent PCI bus 0! +PCI BIOS passed nonexistent PCI bus 0! +PCI BIOS passed nonexistent PCI bus 3! +PCI BIOS passed nonexistent PCI bus 3! +PCI BIOS passed nonexistent PCI bus 3! +PCI BIOS passed nonexistent PCI bus 4! +PCI BIOS passed nonexistent PCI bus 3! SBF: ACPI BOOT descriptor is wrong length (39) SBF: Simple Boot Flag extension found and enabled. SBF: Setting boot flags 0x80 @@ -191,6 +271,7 @@ Intel(R) PRO/100 Network Driver - version 2.1.29-k1 Copyright (c) 2002 Intel Corporation +e100: selftest OK. Freeing alive device f7f15000, eth%d e100: eth0: Intel(R) 8255x-based Ethernet Adapter Hardware receive checksums enabled @@ -216,63 +297,157 @@ <Adaptec aic7880 Ultra SCSI adapter> aic7880: Ultra Wide Channel A, SCSI Id=7, 16/253 SCBs At this point SCSI either fails or works depending... David
-- /==============================\ | David Mansfield | | lkml@dm.cobite.com | \==============================/
[unhandled content-type:application/x-gzip][unhandled content-type:application/x-gzip]
| |