From owner-freebsd-current@FreeBSD.ORG Tue Oct 19 14:56:35 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3942716A4D2 for ; Tue, 19 Oct 2004 14:56:35 +0000 (GMT) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1DB0D43D1F for ; Tue, 19 Oct 2004 14:56:34 +0000 (GMT) (envelope-from robert@fledge.watson.org) Received: from fledge.watson.org (localhost [127.0.0.1]) by fledge.watson.org (8.13.1/8.13.1) with ESMTP id i9JEuOmC070432; Tue, 19 Oct 2004 10:56:24 -0400 (EDT) (envelope-from robert@fledge.watson.org) Received: from localhost (robert@localhost)i9JEuOwh070429; Tue, 19 Oct 2004 10:56:24 -0400 (EDT) (envelope-from robert@fledge.watson.org) Date: Tue, 19 Oct 2004 10:56:24 -0400 (EDT) From: Robert Watson X-Sender: robert@fledge.watson.org To: Daniel Eriksson In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-current@freebsd.org Subject: Re: Interrupts being reported twice? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Oct 2004 14:56:35 -0000 On Mon, 19 Apr 2004, Daniel Eriksson wrote: > I am either getting a lot of extra interrupts, or they are getting > reported twice. This is probably not a new problem, but after switching > some cards around and enabling ACPI (trying to eliminate a recurring > crash, see thread "Current crash on today's kernel" for details) I am > now seeing this for the first time. I have a number of Xeon boxes that have a very similar problem -- depending on whether I configure with APIC and/or ACPI, I will see the following symptoms: - Many hardware devices all configure on the same IRQ, so lots of extra handlers run. Maybe this is honesty in advertising. - Many hardware devices configure on different IRQ's, but all the IRQs fire whenever any one of them wants to generate an interrupt, running many different ithreads. I see the same problem in 4.x. Drew and I exchanged some e-mails comiserating over the fact that this seems to be the case on a lot of machines. Not that this is necessarily what you're seeing, but it would be interesting to know whether in previous configurations you see different symptoms of a similar problem. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Principal Research Scientist, McAfee Research > > # vmstat -i > interrupt total rate > irq1: atkbd0 2 0 > irq4: sio0 627 0 > irq6: fdc0 10 0 > irq8: rtc 763024 127 > irq13: npx0 1 0 > irq14: ata0 48429 8 > irq15: ata1 48409 8 > irq16: atapci1+ 15482279 2596 <-- should be low (<100) > irq18: atapci3 4689 0 > irq19: atapci4+ 3001 0 > irq20: em0 15206541 2550 <-- Real source of interrupts > irq21: em1 ahc0 502577 84 > irq0: clk 5960581 999 > Total 38020170 6377 > > The two marked values follow each other, with IRQ16 always 20-100 higher > than IRQ20. Is this anything to worry about? The interrupt load reported by > 'top' does not seem to be very high, so either the isr for IRQ16 is very > cheap, or it isn't executed at all. > > Hardware: > * Dual Athlon MP on a Tyan Tiger S2466N-4M motherboard (AMD 760MPX chipset), > 1GB ECC DDR > * Intel Pro/1000 MT Dual Port + Adaptec 29160 in the two 64bit/66MHz PCI > slots > * 2 x HighPoint RocketRAID 454 + Promise SATA150 TX4 in 32bit/33MHz PCI > slots (one slot free) > > Software: > * 6-CURRENT from today (2004.10.19.11.00.00), compiled with "*FLAGS= -O2 > -pipe" and "CPUTYPE?=athlon-xp" > * SMP, APIC+ACPI, SCHED_4BSD, HZ=1000, ZERO_COPY_SOCKETS, AHC_ALLOW_MEMIO > * debug.mpsafenet="1", harvest_interrupt="NO", harvest_ethernet="NO", > net.isr.enable=1 > * ataraid, geom_vinum > > Below is the dmesg and output from mptable. > > /Daniel Eriksson > > > /boot/kernel/acpi.ko text=0x469f8 data=0x1ce4+0x112c > syms=[0x4+0x7000+0x4+0x93a8] > KDB: debugger backends: ddb > KDB: current backend: ddb > Copyright (c) 1992-2004 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 6.0-CURRENT #1: Tue Oct 19 13:32:08 CEST 2004 > daniel@xxx.xxx.xxx:/usr/obj/usr/src/sys/XXX > ACPI APIC Table: > Timecounter "i8254" frequency 1193182 Hz quality 0 > CPU: AMD Athlon(tm) MP 2600+ (2000.08-MHz 686-class CPU) > Origin = "AuthenticAMD" Id = 0x6a0 Stepping = 0 > > Features=0x383fbff CMOV,PAT,PSE36,MMX,FXSR,SSE> > AMD Features=0xc0480000 > real memory = 1073217536 (1023 MB) > avail memory = 1040670720 (992 MB) > FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs > cpu0 (BSP): APIC ID: 1 > cpu1 (AP): APIC ID: 0 > MADT: Forcing active-low polarity and level trigger for SCI > ioapic0 irqs 0-23 on motherboard > npx0: [FAST] > npx0: on motherboard > npx0: INT 16 interface > acpi0: on motherboard > acpi0: Power Button (fixed) > acpi0: Sleep Button (fixed) > Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 > acpi_timer0: <24-bit timer at 3.579545MHz> port 0x8008-0x800b on acpi0 > cpu0: on acpi0 > cpu1: on acpi0 > acpi_button0: on acpi0 > pcib0: port 0x8080-0x80ff,0x8000-0x807f,0xcf8-0xcff > iomem 0xd8000-0xdbfff on acpi0 > pci0: on pcib0 > agp0: port 0x1490-0x1493 mem > 0xea100000-0xea100fff,0xec000000-0xedffffff at device 0.0 on pci0 > pcib1: at device 1.0 on pci0 > pci1: on pcib1 > pci1: at device 5.0 (no driver attached) > isab0: at device 7.0 on pci0 > isa0: on isab0 > atapci0: port > 0xf000-0xf00f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 7.1 on pci0 > ata0: channel #0 on atapci0 > ata1: channel #1 on atapci0 > pci0: at device 7.3 (no driver attached) > em0: port > 0x1400-0x143f mem 0xe8000000-0xe803ffff,0xe8080000-0xe809ffff irq 20 at > device 8.0 on pci0 > em0: Ethernet address: 00:04:23:ac:20:8a > em0: Speed:N/A Duplex:N/A > em1: port > 0x1440-0x147f mem 0xe8040000-0xe807ffff,0xe80a0000-0xe80bffff irq 21 at > device 8.1 on pci0 > em1: Ethernet address: 00:04:23:ac:20:8b > em1: Speed:N/A Duplex:N/A > ahc0: port 0x1000-0x10ff mem > 0xe80c0000-0xe80c0fff irq 21 at device 9.0 on pci0 > ahc0: [GIANT-LOCKED] > aic7892: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs > pcib2: at device 16.0 on pci0 > pci2: on pcib2 > atapci1: port > 0x2000-0x20ff,0x30d0-0x30d3,0x30d8-0x30df,0x30d4-0x30d7,0x30e0-0x30e7 irq 16 > at device 4.0 on pci2 > ata2: channel #0 on atapci1 > ata3: channel #1 on atapci1 > atapci2: port > 0x2400-0x24ff,0x30e8-0x30eb,0x30f0-0x30f7,0x30ec-0x30ef,0x30f8-0x30ff irq 16 > at device 4.1 on pci2 > ata4: channel #0 on atapci2 > ata5: channel #1 on atapci2 > atapci3: port > 0x3000-0x307f,0x30c0-0x30cf,0x3080-0x30bf mem > 0xea000000-0xea01ffff,0xea021000-0xea021fff irq 18 at device 6.0 on pci2 > atapci3: failed: rid 0x20 is memory, requested 4 > ata6: channel #0 on atapci3 > ata7: channel #1 on atapci3 > ata8: channel #2 on atapci3 > ata9: channel #3 on atapci3 > atapci4: port > 0x2800-0x28ff,0x3400-0x3403,0x3408-0x340f,0x3404-0x3407,0x3410-0x3417 irq 19 > at device 7.0 on pci2 > ata10: channel #0 on atapci4 > ata11: channel #1 on atapci4 > atapci5: port > 0x2c00-0x2cff,0x3418-0x341b,0x3420-0x3427,0x341c-0x341f,0x3428-0x342f irq 19 > at device 7.1 on pci2 > ata12: channel #0 on atapci5 > ata13: channel #1 on atapci5 > atkbdc0: port 0x64,0x60 irq 1 on acpi0 > atkbd0: irq 1 on atkbdc0 > kbd0 at atkbd0 > atkbd0: [GIANT-LOCKED] > sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on > acpi0 > sio0: type 16550A, console > fdc0: port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on acpi0 > fdc0: [FAST] > fd0: <1440-KB 3.5" drive> on fdc0 drive 0 > pmtimer0 on isa0 > orm0: at iomem 0xe0000-0xe3fff,0xc0000-0xcafff on isa0 > sc0: at flags 0x100 on isa0 > sc0: VGA <16 virtual consoles, flags=0x100> > vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 > sio1: configured irq 3 not in bitmap of probed irqs 0 > sio1: port may not be enabled > Timecounters tick every 1.000 msec > ipfw2 initialized, divert enabled, rule-based forwarding disabled, default > to accept, logging unlimited > ad0: 117800MB [239340/16/63] at ata0-master > UDMA100 > ad1: 117800MB [239340/16/63] at ata0-slave > UDMA100 > ad2: 117800MB [239340/16/63] at ata1-master > UDMA100 > ad3: 117800MB [239340/16/63] at ata1-slave > UDMA100 > ad4: 238475MB [484521/16/63] at ata2-master > UDMA100 > ad5: 238475MB [484521/16/63] at ata2-slave > UDMA100 > ad6: 239372MB [486344/16/63] at ata3-master > UDMA133 > ad7: 239372MB [486344/16/63] at ata3-slave UDMA133 > ad8: 194481MB [395136/16/63] at ata4-master > UDMA133 > ad9: 194481MB [395136/16/63] at ata4-slave UDMA133 > ad10: 194481MB [395136/16/63] at ata5-master > UDMA133 > ad11: 239372MB [486344/16/63] at ata5-slave > UDMA133 > ad12: 239372MB [486344/16/63] at ata6-master > SATA150 > ad14: 238475MB [484521/16/63] at ata7-master > SATA150 > ad16: 239372MB [486344/16/63] at ata8-master > SATA150 > ad20: 114473MB [232581/16/63] at ata10-master UDMA100 > ad21: 114473MB [232581/16/63] at ata10-slave UDMA100 > ad22: 117246MB [238216/16/63] at ata11-master > UDMA133 > ad23: 117246MB [238216/16/63] at ata11-slave > UDMA133 > ad24: 114473MB [232581/16/63] at ata12-master > UDMA100 > ar0: 476950MB [60802/255/63] status: READY subdisks: > disk0 READY on ad4 at ata2-master > disk1 READY on ad5 at ata2-slave > ar1: 478744MB [61031/255/63] status: READY subdisks: > disk0 READY on ad6 at ata3-master > disk1 READY on ad7 at ata3-slave > ar2: 388962MB [49585/255/63] status: READY subdisks: > disk0 READY on ad9 at ata4-slave > disk1 READY on ad8 at ata4-master > ar3: 228946MB [29186/255/63] status: READY subdisks: > disk0 READY on ad23 at ata11-slave > disk1 READY on ad24 at ata12-master > Waiting 5 seconds for SCSI devices to settle > em1: Link is up 100 Mbps Full Duplex > sa0 at ahc0 bus 0 target 5 lun 0 > sa0: Removable Sequential Access SCSI-2 device > sa0: 10.000MB/s transfers (10.000MHz, offset 15) > da0 at ahc0 bus 0 target 0 lun 0 > da0: Fixed Direct Access SCSI-3 device > da0: 40.000MB/s transfers (20.000MHz, offset 31, 16bit), Tagged Queueing > Enabled > da0: 8759MB (17938986 512 byte sectors: 255H 63S/T 1116C) > da1 at ahc0 bus 0 target 1 lun 0 > da1: Fixed Direct Access SCSI-3 device > da1: 40.000MB/s transfers (20.000MHz, offset 31, 16bit), Tagged Queueing > Enabled > da1: 8759MB (17938986 512 byte sectors: 255H 63S/T 1116C) > da2 at ahc0 bus 0 target 10 lun 0 > da2: Fixed Direct Access SCSI-3 device > da2: 160.000MB/s transfers (80.000MHz, offset 63, 16bit), Tagged Queueing > Enabled > da2: 35003MB (71687340 512 byte sectors: 255H 63S/T 4462C) > da3 at ahc0 bus 0 target 11 lun 0 > da3: Fixed Direct Access SCSI-3 device > da3: 160.000MB/s transfers (80.000MHz, offset 63, 16bit), Tagged Queueing > Enabled > da3: 35003MB (71687340 512 byte sectors: 255H 63S/T 4462C) > da4 at ahc0 bus 0 target 12 lun 0 > da4: Fixed Direct Access SCSI-3 device > da4: 160.000MB/s transfers (80.000MHz, offset 63, 16bit), Tagged Queueing > Enabled > da4: 35003MB (71687340 512 byte sectors: 255H 63S/T 4462C) > da5 at ahc0 bus 0 target 13 lun 0 > da5: Fixed Direct Access SCSI-3 device > da5: 160.000MB/s transfers (80.000MHz, offset 63, 16bit), Tagged Queueing > Enabled > da5: 35003MB (71687340 512 byte sectors: 255H 63S/T 4462C) > SMP: AP CPU #1 Launched! > Mounting root from ufs:/dev/da0s1a > > > # mptable > > ============================================================================ > === > > MPTable, version 2.0.15 > > ---------------------------------------------------------------------------- > --- > > MP Floating Pointer Structure: > > location: BIOS > physical address: 0x000f7170 > signature: '_MP_' > length: 16 bytes > version: 1.4 > checksum: 0x6b > mode: Virtual Wire > > ---------------------------------------------------------------------------- > --- > > MP Config Table Header: > > physical address: 0x0009bc70 > signature: 'PCMP' > base table length: 316 > version: 1.4 > checksum: 0x8c > OEM ID: 'TYAN ' > Product ID: 'PAULANER ' > OEM table pointer: 0x00000000 > OEM table size: 0 > entry count: 31 > local APIC address: 0xfee00000 > extended table length: 324 > extended table checksum: 18 > > ---------------------------------------------------------------------------- > --- > > MP Config Base Table Entries: > > -- > Processors: APIC ID Version State Family Model Step > Flags > 1 0x10 BSP, usable 6 10 0 > 0x383fbff > 0 0x10 AP, usable 6 10 0 > 0x383fbff > -- > Bus: Bus ID Type > 0 PCI > 1 PCI > 2 PCI > 3 ISA > -- > I/O APICs: APIC ID Version State Address > 2 0x11 usable 0xfec00000 > -- > I/O Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# > ExtINT active-hi edge 3 0 2 0 > INT active-hi edge 3 1 2 1 > INT active-hi edge 3 0 2 2 > INT active-lo level 0 8:B 2 17 > INT active-hi edge 3 4 2 4 > INT active-lo level 0 8:A 2 16 > INT active-hi edge 3 6 2 6 > INT active-hi edge 3 7 2 7 > INT active-hi edge 3 8 2 8 > INT active-hi edge 3 9 2 9 > INT active-lo level 2 7:A 2 19 > INT active-lo level 1 5:A 2 18 > INT active-hi edge 3 12 2 12 > INT active-hi edge 3 13 2 13 > INT active-hi edge 3 14 2 14 > INT active-hi edge 3 15 2 15 > INT active-lo level 0 9:A 2 17 > INT active-lo level 2 0:C 2 19 > INT active-lo level 2 4:A 2 16 > INT active-lo level 2 4:A 2 16 > INT active-lo level 2 6:A 2 18 > INT active-lo level 2 7:A 2 19 > -- > Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# > ExtINT active-hi edge 3 0 255 0 > NMI active-hi edge 1 0:A 255 1 > > ---------------------------------------------------------------------------- > --- > > MP Config Extended Table Entries: > > -- > System Address Space > bus ID: 0 address type: I/O address > address base: 0x0 > address range: 0x10000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0x40000000 > address range: 0xaa100000 > -- > System Address Space > bus ID: 0 address type: prefetch address > address base: 0xea100000 > address range: 0xdf00000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xf8000000 > address range: 0x6e00000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xfee01000 > address range: 0x11ff000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xa0000 > address range: 0x24000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xc8000 > address range: 0x2000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xcc000 > address range: 0x2000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xd0000 > address range: 0x1000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xd2000 > address range: 0x1000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xd4000 > address range: 0x1000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xd6000 > address range: 0x1000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xd8000 > address range: 0x2000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xe0000 > address range: 0x12000 > -- > System Address Space > bus ID: 0 address type: memory address > address base: 0xf8000 > address range: 0x4000 > -- > Bus Heirarchy > bus ID: 3 bus info: 0x01 parent bus ID: 0 > -- > Compatibility Bus Address > bus ID: 0 address modifier: add > predefined range: 0x00000000 > -- > Compatibility Bus Address > bus ID: 0 address modifier: add > predefined range: 0x00000001 > > ============================================================================ > === > > > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" >