Date: Mon, 03 Dec 2001 14:10:20 -0500 From: Greg Whynott <gwhynott@aw.sgi.com> To: freebsd-bugs@FreeBSD.ORG, gwhynott@aw.sgi.com Subject: SMP kernel issues: NIC driver time outs, scsi bus resets; version 4.2R - 4.4R Message-ID: <3C0BCE1C.B401AFE5@aw.sgi.com>
next in thread | raw e-mail | index | archive | help
Hello- The intel (fxp) NIC drivers usually do not work when I have enabled a SMP kernel. Is this a known problem with SMP kernels and device drivers in the 4.X RELEASE line? If you don't care to read the background please skip to _EOB_ Few years ago I installed FreeBSD 4.2 RELEASE. At the time I had a 2940UW option card attached to a SCSI hard disk device used as my root fs device. The main board has two PPRO 200 I686 type CPUs. After hand crafting a new kernel and booting with it I would see SCSI bus time outs as the system came up eventually the system would reboot after awhile but prior to mounting the root fs. ( I submitted a bug about this to the freebsd bug report page ) Thinking it was perhaps a driver having issues with SMP in this particular release I went back to not running symmetrical processors, all was good. Now a few years later I have a desire to have both CPU's running. I downloaded 4.4 RELEASE thinking what issue may have been in the past RELEASE would be corrected. This in not the case. Same 'time out' errors. Now I tried a several things to resolve this that I'll lightly touch on so not to make this letter into a book.. : Replaced the 2940UW with an old 2940, no diff : replaced 2940 with a 2940-160 (brand new), no diff. (tried cards in different slots as well) Removed SCSI subsystem altogether, replaced with IDE drive. It boots! Happiness is short lived. Now my screen fills up with "fxpX timed out." errors. I have one dual and one single Intel epro card. Placing these cards in different slots changes nothing. Putting in another dual epro card (for a total of 5 ethernet ports) changes things. One of the ports on the Dual cards comes up, as does the port on the single port NIC card, the other 3 do not, 'fxpX time out' errors continue. Going back to single CPU kernel allows me to have all 5 ports up and up (3 cards) and also allows me to use any 2 SCSI cards at once. The only difference in the kernel conf is the two SMP lines. _EOB_ Here is the output of mptable and dmesg while booted from both SMP and UP kernels. The only difference in the kernel config files is the inclusion / exclusion of the two SMP lines. MainBoard: Tyan Titan Pro CPU: Dual Pentium Pro 200 =============================================================================== MPTable, version 2.0.15 ------------------------------------------------------------------------------- MP Floating Pointer Structure: location: BIOS physical address: 0x000f0920 signature: '_MP_' length: 16 bytes version: 1.1 checksum: 0x57 mode: Virtual Wire ------------------------------------------------------------------------------- MP Config Table Header: physical address: 0x000f0934 signature: 'PCMP' base table length: 292 version: 1.1 checksum: 0xaf OEM ID: 'OEM00000' Product ID: 'PROD00000000' OEM table pointer: 0x00000000 OEM table size: 0 entry count: 28 local APIC address: 0xfee00000 extended table length: 0 extended table checksum: 0 ------------------------------------------------------------------------------- MP Config Base Table Entries: -- Processors: APIC ID Version State Family Model Step Flags 1 0x11 BSP, usable 6 1 7 0xfbff 0 0x11 AP, usable 6 1 7 0xfbff -- Bus: Bus ID Type 0 ISA 1 PCI -- 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 conforms conforms 0 0 2 0 INT conforms conforms 0 1 2 1 INT conforms conforms 0 0 2 2 INT conforms conforms 0 3 2 3 INT conforms conforms 0 4 2 4 INT conforms conforms 0 5 2 5 INT conforms conforms 0 6 2 6 INT conforms conforms 0 7 2 7 INT conforms conforms 0 8 2 8 INT conforms conforms 0 9 2 9 INT conforms conforms 0 10 2 10 INT conforms conforms 0 11 2 11 INT conforms conforms 0 12 2 12 INT conforms conforms 0 13 2 13 INT conforms conforms 0 14 2 14 INT conforms conforms 0 15 2 15 INT active-lo level 1 14:A 2 16 INT active-lo level 1 13:A 2 17 INT active-lo level 1 12:A 2 18 INT active-lo level 1 11:A 2 19 SMI conforms conforms 0 0 2 23 -- Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# ExtINT active-hi edge 0 0 255 0 NMI active-hi edge 0 0 255 1 =============================================================================== Copyright (c) 1992-2001 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 4.4-RELEASE #0: Sun Dec 2 21:17:33 EST 2001 root@vortex.fqdn.com:/usr/src/sys/compile/VORTEX-FW Timecounter "i8254" frequency 1193182 Hz CPU: Pentium Pro (198.95-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x617 Stepping = 7 Features=0xfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV> real memory = 201326592 (196608K bytes) avail memory = 192311296 (187804K bytes) Changing APIC ID for IO APIC #0 from 0 to 2 on chip Programming 24 pins in IOAPIC #0 IOAPIC #0 intpin 2 -> irq 0 FreeBSD/SMP: Multiprocessor motherboard cpu0 (BSP): apic id: 1, version: 0x00040011, at 0xfee00000 cpu1 (AP): apic id: 0, version: 0x00040011, at 0xfee00000 io0 (APIC): apic id: 2, version: 0x00170011, at 0xfec00000 Preloaded elf kernel "kernel" at 0xc0369000. Pentium Pro MTRR support enabled md0: Malloc disk npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard IOAPIC #0 intpin 17 -> irq 2 pci0: <PCI bus> on pcib0 isab0: <Intel 82371SB PCI to ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel PIIX3 ATA controller> port 0xf000-0xf00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 pcib1: <DEC 21152 PCI-PCI bridge> at device 10.0 on pci0 pci1: <PCI bus> on pcib1 fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0xe000-0xe01f mem 0xd0000000-0xd00fffff,0xdf000000-0xdf000fff irq 11 at device 4.0 on pci1 fxp0: Ethernet address 00:90:27:3a:ae:96 inphy0: <i82555 10/100 media interface> on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto fxp1: <Intel Pro 10/100B/100+ Ethernet> port 0xe100-0xe11f mem 0xd0100000-0xd01fffff,0xdf001000-0xdf001fff irq 15 at device 5.0 on pci1 fxp1: Ethernet address 00:90:27:3a:ae:97 inphy1: <i82555 10/100 media interface> on miibus1 inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: <Matrox MGA Millennium 2064W graphics accelerator> at 13.0 irq 2 orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 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 sc0: <System console> on isa0 sc0: VGA <16 virtual consoles, flags=0x200> APIC_IO: Testing 8254 interrupt delivery APIC_IO: routing 8254 via IOAPIC #0 intpin 2 IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to deny, logging limited to 100 packets/entry by default DUMMYNET initialized (010124) IP Filter: v3.4.20 initialized. Default = pass all, Logging = enabled ata0-master: DMA limited to UDMA33, non-ATA66 compliant cable ad0: 14594MB <ST315320A> [29651/16/63] at ata0-master WDMA2 acd0: CDROM <CD-ROM 48X/AKU> at ata0-slave using PIO4 Mounting root from ufs:/dev/ad0s1a SMP: AP CPU #1 Launched! IP Filter: v3.4.20 unloaded fxp0: device timeout fxp1: device timeout fxp0: device timeout fxp1: device timeout **************** -- UP KERNEL -- **************** =============================================================================== MPTable, version 2.0.15 ------------------------------------------------------------------------------- MP Floating Pointer Structure: location: BIOS physical address: 0x000f0920 signature: '_MP_' length: 16 bytes version: 1.1 checksum: 0x57 mode: Virtual Wire ------------------------------------------------------------------------------- MP Config Table Header: physical address: 0x000f0934 signature: 'PCMP' base table length: 292 version: 1.1 checksum: 0xaf OEM ID: 'OEM00000' Product ID: 'PROD00000000' OEM table pointer: 0x00000000 OEM table size: 0 entry count: 28 local APIC address: 0xfee00000 extended table length: 0 extended table checksum: 0 ------------------------------------------------------------------------------- MP Config Base Table Entries: -- Processors: APIC ID Version State Family Model Step Flags 1 0x11 BSP, usable 6 1 7 0xfbff 0 0x11 AP, usable 6 1 7 0xfbff -- Bus: Bus ID Type 0 ISA 1 PCI -- 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 conforms conforms 0 0 2 0 INT conforms conforms 0 1 2 1 INT conforms conforms 0 0 2 2 INT conforms conforms 0 3 2 3 INT conforms conforms 0 4 2 4 INT conforms conforms 0 5 2 5 INT conforms conforms 0 6 2 6 INT conforms conforms 0 7 2 7 INT conforms conforms 0 8 2 8 INT conforms conforms 0 9 2 9 INT conforms conforms 0 10 2 10 INT conforms conforms 0 11 2 11 INT conforms conforms 0 12 2 12 INT conforms conforms 0 13 2 13 INT conforms conforms 0 14 2 14 INT conforms conforms 0 15 2 15 INT active-lo level 1 14:A 2 16 INT active-lo level 1 13:A 2 17 INT active-lo level 1 12:A 2 18 INT active-lo level 1 11:A 2 19 SMI conforms conforms 0 0 2 23 -- Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# ExtINT active-hi edge 0 0 255 0 NMI active-hi edge 0 0 255 1 =============================================================================== Copyright (c) 1992-2001 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 4.4-RELEASE #0: Sun Dec 2 16:42:03 EST 2001 root@vortex.fqdn.com:/usr/src/sys/compile/VORTEX-VLAN Timecounter "i8254" frequency 1193182 Hz Timecounter "TSC" frequency 198948365 Hz CPU: Pentium Pro (198.95-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x617 Stepping = 7 Features=0xfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV> real memory = 201326592 (196608K bytes) avail memory = 192393216 (187884K bytes) Preloaded elf kernel "kernel.good" at 0xc0359000. Pentium Pro MTRR support enabled md0: Malloc disk npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 Correcting Natoma config for non-SMP isab0: <Intel 82371SB PCI to ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel PIIX3 ATA controller> port 0xf000-0xf00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 pcib1: <DEC 21152 PCI-PCI bridge> at device 10.0 on pci0 pci1: <PCI bus> on pcib1 fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0xe000-0xe01f mem 0xd0000000-0xd00fffff,0xdf000000-0xdf000fff irq 11 at device 4.0 on pci1 fxp0: Ethernet address 00:90:27:3a:ae:96 inphy0: <i82555 10/100 media interface> on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto fxp1: <Intel Pro 10/100B/100+ Ethernet> port 0xe100-0xe11f mem 0xd0100000-0xd01fffff,0xdf001000-0xdf001fff irq 15 at device 5.0 on pci1 fxp1: Ethernet address 00:90:27:3a:ae:97 inphy1: <i82555 10/100 media interface> on miibus1 inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: <Matrox MGA Millennium 2064W graphics accelerator> at 13.0 irq 15 orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 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 sc0: <System console> on isa0 sc0: VGA <16 virtual consoles, flags=0x200> IP packet filtering initialized, divert enabled, rule-based forwarding enabled, default to deny, logging limited to 100 packets/entry by default DUMMYNET initialized (010124) IP Filter: v3.4.20 initialized. Default = block all, Logging = enabled ata0-master: DMA limited to UDMA33, non-ATA66 compliant cable ad0: 14594MB <ST315320A> [29651/16/63] at ata0-master WDMA2 acd0: CDROM <CD-ROM 48X/AKU> at ata0-slave using PIO4 Mounting root from ufs:/dev/ad0s1a IP Filter: v3.4.20 unloaded -- Gregory.Whynott. Network.Administrator. Alias|Wavefront SGI. Unix is user friendly, it's just selective about who its friends are. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3C0BCE1C.B401AFE5>