Date: Wed, 6 Dec 2000 17:12:54 -0600 (CST) From: Kevin Day <toasty@temphost.dragondata.com> To: bugs@freebsd.org, sos@freebsd.org Subject: New ATA code in 4.1.1+ breaks ServerWorks sym Message-ID: <200012062312.RAA64600@temphost.dragondata.com>
next in thread | raw e-mail | index | archive | help
After upgrading my Proliant ML530 server from 4.1 to 4.1.1, i got a panic on boot in the sym driver, saying "Unable to allocate IRQ resource", then a kernel trap. I narrowed down the breakage to a specific set of commits: Edit src/sys/dev/ata/ata-all.c Add delta 1.50.2.6 2000.08.22.08.41.28 sos Edit src/sys/dev/ata/ata-all.h Add delta 1.26.2.2 2000.08.22.08.41.29 sos Edit src/sys/dev/ata/ata-disk.c Add delta 1.60.2.6 2000.08.22.08.41.29 sos Edit src/sys/dev/ata/ata-dma.c Add delta 1.35.2.4 2000.08.22.08.41.29 sos Edit src/sys/dev/ata/atapi-cd.c Add delta 1.48.2.4 2000.08.22.08.41.29 sos Edit src/sys/dev/ata/atapi-cd.h Add delta 1.15.2.3 2000.08.22.08.41.29 sos MFC: Update with latest fixes from -current. ATA100 support. New improved probe. Multisector setup more restrictive ata-disk. New error recovery in ata-disk. Remove sequence checks in atapi-cd Full boot message before this commit: Copyright (c) 1992-2000 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.1-RELEASE #0: Thu Jul 27 04:44:16 GMT 2000 root@usw4.freebsd.org:/usr/src/sys/compile/GENERIC Timecounter "i8254" frequency 1193182 Hz CPU: Pentium III/Pentium III Xeon/Celeron (863.93-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x683 Stepping = 3 Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,XMM> real memory = 1073725440 (1048560K bytes) avail memory = 1040642048 (1016252K bytes) Pentium Pro MTRR support enabled md0: Malloc disk npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <RCC LE host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pci0: <unknown card> (vendor=0x0e11, dev=0xa0f0) at 3.0 pci0: <ATI Mach64-GV graphics accelerator> at 5.0 isab0: <PCI to ISA bridge (vendor=1166 device=0200)> at device 15.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Generic PCI ATA controller> port 0x2400-0x240f at device 15.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 pcib2: <RCC LE host to PCI bridge> on motherboard pci2: <PCI bus> on pcib2 sym0: <896> port 0x3000-0x30ff mem 0xc6bfc000-0xc6bfdfff,0xc6bffc00-0xc6bfffff irq 15 at device 5.0 on pci2 sym0: Symbios NVRAM, ID 7, Fast-40, LVD, parity checking sym0: open drain IRQ line driver, using on-chip SRAM sym0: using LOAD/STORE-based firmware. sym0: handling phase mismatch from SCRIPTS. sym1: <896> port 0x3400-0x34ff mem 0xc6bf8000-0xc6bf9fff,0xc6bfbc00-0xc6bfbfff irq 15 at device 5.1 on pci2 sym1: Symbios NVRAM, ID 7, Fast-40, SE, parity checking sym1: open drain IRQ line driver, using on-chip SRAM sym1: using LOAD/STORE-based firmware. sym1: handling phase mismatch from SCRIPTS. pcib255: <RCC LE host to PCI bridge> on motherboard pci255: <PCI bus> on pcib255 pcib5: <RCC LE host to PCI bridge> on motherboard pci5: <PCI bus> on pcib5 sym2: <896> port 0x4000-0x40ff mem 0xc6ffc000-0xc6ffdfff,0xc6fffc00-0xc6ffffff irq 10 at device 4.0 on pci5 sym2: No NVRAM, ID 7, Fast-40, LVD, parity checking sym3: <896> port 0x4400-0x44ff mem 0xc6ff8000-0xc6ff9fff,0xc6ffbc00-0xc6ffbfff irq 11 at device 4.1 on pci5 sym3: No NVRAM, ID 7, Fast-40, LVD, parity checking pci5: <unknown card> (vendor=0x120e, dev=0x0201) at 8.0 fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0x4880-0x48bf mem 0xc6c00000-0xc6cfffff,0xc6dff000-0xc6dfffff irq 5 at device 9.0 on pc i5 fxp0: Ethernet address 00:50:8b:af:06:b8 eisa0: <EISA bus> on motherboard mainboard0: <CPQ0712 (System Board)> on eisa0 slot 0 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 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 ppc0: cannot reserve I/O port range ata0-slave: ata_command: timeout waiting for intr ata0-slave: identify failed acd0: CDROM <Compaq CRD-8402B> at ata0-master using PIO4 Relevant boot messages after this commit: (hand typed, port/memory regions omitted) pcib0: <RCC LE host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pci0: <unknown card> (vendor=0x0e11, dev=0xa0f0) at 3.0 pci0: <ATI Mach64-GV graphics accelerator> at 5.0 fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0x2400-0x243f mem=0xc800000-0xc8fffff,0xc69fd000-0xc69fdfff irq5 at device 8.0 on pci0 fxp0: Ethernet address ... isab0: <PCI to ISA bridge (vendor=1166 device=0200)> at device 15.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Generic PCI ATA controller> port 0x2440-0x244f at device 15.1 on pci0 ata0: at 0x1f0 irq14 on atapci0 ata1: at 0x170 irq15 on atapci0 pcib2: <RCC LE host to PCI bridge> on motherboard pci2: <PCI bus> on pcib2 pci2: <unknown card> (vendor=0x1148, dev0x4300) at 6.0 irq 10 pcib255: <RCC LE host to PCI bridge> on motherboard pci255: <PCI bus> on pcib255 pcib5: <RCC LE host to PCI bridge> on motherboard pci5: <PCI bux> on pcib5 sym0: <896> port .... mem .... irq 11 at device 4.0 on pci5 sym0: No NVRAM, ID 7, Fast-40, LVD, parity checking sym1: <896> port .... mem .... irq 15 at device 4.1 on pci5 sym1: failed to allocate IRQ resource Fatal trap 12: page fault while in kernel mode fault virtual address = 0x0 fault code = supervisor read, page not present ... (omitted) ... panic: page fault Uptime: 0s This motherboard only has one IDE channel... at least, only one connector, and it's only designed to go to the CD-ROM. Everything else is SCSI. 4.1-RELEASE only saw the primary channel. But after that commit, it sees two channels. I don't know if this is correct or not, but the side effect is that the secondary IDE channel uses IRQ 15, which sym1 wants to use, and somehow can't share. Sym0 was sucessfully moved from 15 to 11, to avoid sharing i'm guessing... why didn't sym1 get moved, if that's the case? In any case, this breaks GENERIC on 4.1.1 and higher on Proliant ML series servers... Can someone take a look at this? I'm willing to help how I can. -- Kevin 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?200012062312.RAA64600>