Possible cause of "spurious APIC interrupt"

Andre M. Hedrick (hedrick@Astro.Dyer.Vanderbilt.Edu)
Sat, 23 May 1998 13:18:47 -0500 (CDT)


"spurious APIC interrupt, ayiee, should never happen."

results of "lspci -vx" v1.03

00:07.2 USB Controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II]
(rev 01)
Flags: bus master, medium devsel, latency 64, IRQ ?
I/O ports at ef40
00: 86 80 20 70 05 00 80 02 01 00 03 0c 00 40 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 41 ef 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 ff 04 00 00

I have noted that I only get this message if I enable the USB support
in the BIOS of my P6DNF. It seems that IO-APIC irq-translations
stick the USB irq at 0xff 255. Since the latest SMP code flags against
an interrupt of 0xff, this may be the need insight for catching
and handling that "spurious APIC interrupt".

results of "lspci -vvxx" v1.03

00:07.2 USB Controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II]
(rev 01)
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
Status: 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64 set
Interrupt: pin D routed to IRQ 0
Region 4: I/O ports at ef40
00: 86 80 20 70 05 00 80 02 01 00 03 0c 00 40 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 41 ef 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 ff 04 00 00
40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
60: 10 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 30 05 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 10 0f 00 00 00 00 00 00

There appears to be double reporting of the interrupt in question.

results of "cat /proc/pci"

Bus 0, device 7, function 2:
USB Controller: Intel 82371SB PIIX3 USB (rev 1).
Medium devsel. Fast back-to-back capable. Master Capable. Latency=64.
I/O at 0xef40 [0xef41].

Stuff below is system FYI stuff..........

Linux Orion 2.1.104 #1 SMP Sat May 23 12:28:07 CDT 1998 i686

processor : 0
cpu family : 6
model : Pentium Pro
vendor_id : GenuineIntel
stepping : 7
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
bogomips : 231.83

processor : 1
cpu family : 6
model : Pentium Pro
vendor_id : GenuineIntel
stepping : 7
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
bogomips : 231.83

CPU0 CPU1
0: 135388 179 XT-PIC timer
1: 3054 1522 IO-APIC-edge keyboard
2: 0 0 XT-PIC cascade
3: 6625 2706 IO-APIC-edge serial
4: 7136 5115 IO-APIC-edge serial
5: 0 2 IO-APIC-edge soundblaster
8: 0 1 IO-APIC-edge rtc
12: 12633 7665 IO-APIC-edge PS/2 Mouse
13: 1 0 XT-PIC fpu
16: 9 10 IO-APIC-level ide2, ide3
18: 1687 1689 IO-APIC-level ide0
19: 2 1 IO-APIC-level Digital DS21041 Tulip

Character devices:
1 mem
2 pty
3 ttyp
4 ttyp
5 cua
7 vcs
10 misc
14 sound
36 netlink

Block devices:
2 fd
3 ide0
7 loop
22 ide1
33 ide2
34 ide3

Cheers,
Andre Hedrick

On Fri, 22 May 1998, Linus Torvalds wrote:

>
>
> There's a new pre-patch on ftp.kernel.org.
>
> The bulk of the pre-patch is just some speeling error fixes, but there's a
> one-liner that gets rid of the double interrupts with level-triggered
> irq's on the IO-APIC, and that is known to have fixed one persons SCSI
> tape driver (the fact that there were problems with too many interrupts
> implies that something is slightly buggered in the driver, but..)
>
> This should also have a ne2000 driver that doesn't get a NULL pointer
> fault for some people, and the irq changes should hopefully make it work
> on UP systems again even if the kernel is compiled as SMP.
>
> And there are some MTRR updates.
>
> Comments?
>
> Linus
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu