Re: Potential source of interrupt aliasing

From: Wilhelm B. Kloke <wb_at_arb-phys.uni-dortmund.de>
Date: Sun, 10 Apr 2005 09:07:36 +0000 (UTC)
Doug White <dwhite_at_gumbysoft.com> schrieb:
> On Fri, 8 Apr 2005, John Baldwin wrote:
>
> For fun, I put together this one-liner to at least test the theory:
>
> http://people.freebsd.org/~dwhite/intr_machdep.c.20050409.patch

As I have found a problem which could be related to this, I tried your patch.
For my problems, it made things not better, possibly worse.

Now the description of my problem: I have got a NVidia Quadro card, which
I want to use in active stereo mode. This worked approximately well on
my older K6 system. Now I have upgraded to K8 (amd64). As NVidia does
not supply amd64 drivers till now, I have installed an i386 FreeBSD-5.4
on the machine. I get interrupt rates above 85 on the irq11 line.
Before patching up to 200, after patching more than 1000. I suspect that
the warnings about $PIR may be related to my problem. Here is the dmesg
(with your patch):

Copyright (c) 1992-2005 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD 5.4-PRERELEASE #6: Sun Apr 10 10:49:37 CEST 2005
    wb_at_wbk2:/home/src-5.3/sys/i386/compile/WBK
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: AMD Athlon(tm) 64 Processor 3000+ (1808.81-MHz 686-class CPU)
  Origin = "AuthenticAMD"  Id = 0x10ff0  Stepping = 0
  Features=0x78bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2>
  AMD Features=0xe0500000<NX,AMIE,LM,DSP,3DNow!>
real memory  = 1073676288 (1023 MB)
avail memory = 1041125376 (992 MB)
MPTable: <OEM00000 PROD00000000>
ioapic0: Assuming intbase of 0
ioapic0 <Version 1.1> irqs 0-23 on motherboard
npx0: <math processor> on motherboard
npx0: INT 16 interface
cpu0 on motherboard
pcib0: <Host to PCI bridge> pcibus 0 on motherboard
pir0: <PCI Interrupt Routing Table: 11 Entries> on motherboard
pci0: <PCI bus> on pcib0
$PIR: No matching entry for 0.1.INTA
$PIR: No matching entry for 0.2.INTA
$PIR: No matching entry for 0.2.INTB
$PIR: No matching entry for 0.2.INTC
$PIR: No matching entry for 0.5.INTA
$PIR: No matching entry for 0.6.INTA
$PIR: No matching entry for 0.10.INTA
agp0: <NVIDIA Generic AGP Controller> mem 0xe0000000-0xe7ffffff at device 0.0 on pci0
agp0: Unable to find NVIDIA Memory Controller 1.
device_attach: agp0 attach returned 19
isab0: <PCI-ISA bridge> at device 1.0 on pci0
isa0: <ISA bus> on isab0
pci0: <serial bus, SMBus> at device 1.1 (no driver attached)
ohci0: <OHCI (generic) USB controller> mem 0xfc003000-0xfc003fff irq 9 at device 2.0 on pci0
usb0: OHCI version 1.0, legacy support
usb0: <OHCI (generic) USB controller> on ohci0
usb0: USB revision 1.0
uhub0: nVidia OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 4 ports with 4 removable, self powered
ohci1: <OHCI (generic) USB controller> mem 0xfc004000-0xfc004fff irq 9 at device 2.1 on pci0
usb1: OHCI version 1.0, legacy support
usb1: <OHCI (generic) USB controller> on ohci1
usb1: USB revision 1.0
uhub1: nVidia OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 4 ports with 4 removable, self powered
pci0: <serial bus, USB> at device 2.2 (no driver attached)
pci0: <network, ethernet> at device 5.0 (no driver attached)
pci0: <multimedia, audio> at device 6.0 (no driver attached)
atapci0: <nVidia nForce3 Pro UDMA133 controller> port 0xf000-0xf00f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 8.0 on pci0
ata0: channel #0 on atapci0
ata1: channel #1 on atapci0
atapci1: <GENERIC ATA controller> port 0xdc00-0xdc0f,0xb70-0xb73,0x970-0x977,0xbf0-0xbf3,0x9f0-0x9f7 irq 11 at device 10.0 on pci0
ata2: channel #0 on atapci1
ata3: channel #1 on atapci1
pcib1: <PCI-PCI bridge> at device 11.0 on pci0
pci1: <PCI bus> on pcib1
$PIR: ROUTE_INTERRUPT failed.
nvidia0: <Quadro4 550 XGL> mem 0xf0000000-0xf007ffff,0xe8000000-0xefffffff,0xf8000000-0xf8ffffff irq 11 at device 0.0 on pci1
pcib2: <MPTable PCI-PCI bridge> at device 14.0 on pci0
pci2: <PCI bus> on pcib2
pcib2: unable to route slot 14 INTA
skc0: <Marvell Gigabit Ethernet> port 0x9000-0x90ff mem 0xfb000000-0xfb003fff irq 19 at device 11.0 on pci2
skc0: Marvell Yukon Lite Gigabit Ethernet rev. A3(0x7)
sk0: <Marvell Semiconductor, Inc. Yukon> on skc0
sk0: Ethernet address: 00:0f:ea:5c:67:4a
miibus0: <MII bus> on sk0
e1000phy0: <Marvell 88E1000 Gigabit PHY> on miibus0
e1000phy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX-FDX, auto
atapci2: <SiI 3512 SATA150 controller> port 0xa400-0xa40f,0xa000-0xa003,0x9c00-0x9c07,0x9800-0x9803,0x9400-0x9407 mem 0xfb009000-0xfb0091ff irq 17 at device 13.0 on pci2
ata4: channel #0 on atapci2
ata5: channel #1 on atapci2
fwohci0: <Texas Instruments TSB82AA2> mem 0xfb004000-0xfb007fff,0xfb008000-0xfb0087ff irq 5 at device 14.0 on pci2
fwohci0: OHCI version 1.10 (ROM=1)
fwohci0: No. of Isochronous channels is 4.
fwohci0: EUI64 00:0f:ea:56:00:59:77:0a
fwohci0: invalid speed 7 (fixed to 3).
fwohci0: Phy 1394a available S800, 3 ports.
fwohci0: Link S800, max_rec 4096 bytes.
firewire0: <IEEE1394(FireWire) bus> on fwohci0
fwohci0: Initiate bus reset
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me)
firewire0: bus manager 0 (me)
fwohci0: phy int
orm0: <ISA Option ROMs> at iomem 0xd2000-0xd2fff,0xd0000-0xd17ff,0xc0000-0xcefff on isa0
pmtimer0 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x64,0x60 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model IntelliMouse, device ID 3
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/16 bytes threshold
ppbus0: <Parallel port bus> on ppc0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
unknown: <PNP0303> can't assign resources (port)
unknown: <PNP0f13> can't assign resources (irq)
unknown: <PNP0501> can't assign resources (port)
unknown: <PNP0401> can't assign resources (port)
unknown: <PNP0501> can't assign resources (port)
Timecounter "TSC" frequency 1808812877 Hz quality 800
Timecounters tick every 10.000 msec
acd0: DVDR <TSSTcorpCD/DVDW TS-H552B/TS04> at ata0-master UDMA33
ad4: 152626MB <SAMSUNG SP1614C/SW100-30> [310098/16/63] at ata2-master UDMA33
Mounting root from ufs:/dev/ad4s4g
-- 
Dipl.-Math. Wilhelm Bernhard Kloke
Institut fuer Arbeitsphysiologie an der Universitaet Dortmund
Ardeystrasse 67, D-44139 Dortmund, Tel. 0231-1084-257
Received on Sun Apr 10 2005 - 07:10:39 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:31 UTC