kern/91910: aac driver hangs on Dell PE800 with CERC SATA controller (regression from 5.4)

Vivek Khera vivek at khera.org
Tue Jan 17 08:00:32 PST 2006


>Number:         91910
>Category:       kern
>Synopsis:       aac driver hangs on Dell PE800 with CERC SATA controller (regression from 5.4)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jan 17 16:00:18 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Vivek Khera
>Release:        FreeBSD 6.0-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD yertle.int.kciLink.com 5.4-STABLE FreeBSD 5.4-STABLE #7: Tue May 31 11:38:22 EDT 2005 khera at yertle.int.kciLink.com:/usr/obj/usr/src/sys/YERTLE amd64

I'm upgrading my 5.4 system to 6.0-RELEASE-p2.

	
>Description:
	

Did the usual cvsup, buildworld, buildkernel (custom kernel), installkernel
reboot.  It hangs after it detects the aacd0 volume and reports it as RAID5
and the size.  The keyboard is unresponsive (caps lock key doesn't respond
either) but the serial console lets me break to debugger.

Booting from the 6.0-REL/amd64 CD hangs as well, but there is no debugger
to break into.

Here's the kernel boot from the serial console, and the backtrace from the
debugger.

KDB: debugger backends: ddb
KDB: current backend: ddb
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 6.0-RELEASE-p2 #1: Mon Jan 16 22:09:44 EST 2006
    vivek at yertle.int.kciLink.com:/usr/obj/usr/src/sys/YERTLE
ACPI APIC Table: <DELL   PE800   >
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Pentium(R) 4 CPU 3.20GHz (3200.13-MHz K8-class CPU)
  Origin = "GenuineIntel"  Id = 0xf41  Stepping = 1
  Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C
  Features2=0x641d<SSE3,RSVD2,MON,DS_CPL,CNTX-ID,CX16,<b14>>
  AMD Features=0x20100800<SYSCALL,NX,LM>
  Hyperthreading: 2 logical CPUs
real memory  = 1065091072 (1015 MB)
avail memory = 1020522496 (973 MB)
ioapic0: Changing APIC ID to 2
ioapic1: Changing APIC ID to 3
ioapic1: WARNING: intbase 32 != expected base 24
ioapic0 <Version 2.0> irqs 0-23 on motherboard
ioapic1 <Version 2.0> irqs 32-55 on motherboard
acpi0: <DELL PE800> on motherboard
acpi0: Power Button (fixed)
pci_link0: <ACPI PCI Link LNKA> irq 11 on acpi0
pci_link1: <ACPI PCI Link LNKB> on acpi0
pci_link2: <ACPI PCI Link LNKC> irq 3 on acpi0
pci_link3: <ACPI PCI Link LNKD> irq 5 on acpi0
pci_link4: <ACPI PCI Link LNKE> irq 10 on acpi0
pci_link5: <ACPI PCI Link LNKF> on acpi0
pci_link6: <ACPI PCI Link LNKG> on acpi0
pci_link7: <ACPI PCI Link LNKH> on acpi0
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0
cpu0: <ACPI CPU> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0
pci1: <ACPI PCI bus> on pcib1
pcib2: <ACPI PCI-PCI bridge> at device 0.0 on pci1
pci2: <ACPI PCI bus> on pcib2
aac0: <Dell CERC SATA RAID 2> mem 0xd8000000-0xdbffffff irq 32 at device 1.0 on 
aac0: [FAST]
aac0: Adaptec Raid Controller 2.0.0-1
ahc0: <Adaptec 3960D Ultra160 SCSI adapter> port 0xec00-0xecff mem 0xdfdff000-0 
ahc0: [GIANT-LOCKED]
aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
ahc1: <Adaptec 3960D Ultra160 SCSI adapter> port 0xe800-0xe8ff mem 0xdfdfe000-0 
ahc1: [GIANT-LOCKED]
aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
pci0: <display, VGA> at device 2.0 (no driver attached)
pcib3: <ACPI PCI-PCI bridge> at device 28.0 on pci0
pci3: <ACPI PCI bus> on pcib3
pcib4: <ACPI PCI-PCI bridge> at device 28.1 on pci0
pci4: <ACPI PCI bus> on pcib4
pcib5: <ACPI PCI-PCI bridge> at device 28.2 on pci0
pci5: <ACPI PCI bus> on pcib5
bge0: <Broadcom BCM5721 Gigabit Ethernet, ASIC rev. 0x4001> mem 0xdfaf0000-0xdfq
miibus0: <MII bus> on bge0
brgphy0: <BCM5750 10/100/1000baseTX PHY> on miibus0
brgphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX
bge0: Ethernet address: 00:0f:1f:f8:48:f4
pcib6: <ACPI PCI-PCI bridge> at device 28.3 on pci0
pci6: <ACPI PCI bus> on pcib6
pcib7: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci7: <ACPI PCI bus> on pcib7
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH6 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x37
ata0: <ATA channel 0> on atapci0
ata1: <ATA channel 1> on atapci0
atapci1: <Intel ICH6 SATA150 controller> port 0xccf0-0xccf7,0xcce8-0xcceb,0xccdc
ata2: <ATA channel 0> on atapci1
ata3: <ATA channel 1> on atapci1
ata4: <ATA channel 2> on atapci1
ata5: <ATA channel 3> on atapci1
pci0: <serial bus, SMBus> at device 31.3 (no driver attached)
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model Generic PS/2 mouse, device ID 0
sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
sio0: type 16550A, console
orm0: <ISA Option ROMs> at iomem 0xc9800-0xcd7ff,0xec000-0xeffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3b0-0x3df iomem 0xa0000-0xbffff on isa0
sio1: configured irq 3 not in bitmap of probed irqs 0
sio1: port may not be enabled
Timecounter "TSC" frequency 3200130424 Hz quality 800
Timecounters tick every 1.000 msec
acd0: CDROM <GCR-8483B/1.05> at ata0-master UDMA33
aacd0: <RAID 5> on aac0
aacd0: 228782MB (468546816 sectors)
KDB: enter: Break sequence on console
[thread pid 29 tid 100023 ]
Stopped at      kdb_enter+0x2f: popq    %rbp
db> bt
Tracing pid 29 tid 100023 td 0xffffff003d3fc720
kdb_enter() at kdb_enter+0x2f
siointr1() at siointr1+0x382
siointr() at siointr+0x3d
intr_execute_handlers() at intr_execute_handlers+0x112
lapic_handle_intr() at lapic_handle_intr+0x21
Xapic_isr1() at Xapic_isr1+0x7d
--- interrupt, rip = 0xffffffff8036ab38, rsp = 0xffffffffa4fedba0, rbp = 0xfffff
spinlock_exit() at spinlock_exit+0x33
ithread_loop() at ithread_loop+0x1de
fork_exit() at fork_exit+0x8b
fork_trampoline() at fork_trampoline+0xe
--- trap 0, rip = 0, rsp = 0xffffffffa4fedd00, rbp = 0 ---
db> 



This is the ID of the card from the POST:


Dell CERC SATA 1.5/6ch BIOS V4.1-0 [Build 7401]
(c) 1998-2003 Adaptec, Inc. All Rights Reserved.

    Press <Ctrl><A> for Adaptec RAID Configuration Utility!    

Booting the Controller Kernel......Controller started

Controller #00: Dell CERC SATA 1.5/6ch at PCI Bus:02, Dev:01, Func:00
Waiting for Controller to Start....Controller started
Controller monitor V4.1-0[7401], Controller kernel V4.1-0[7401]
Controller POST operation successful
Controller Memory Size: 64 MB
Port#  Vendor    Product Info        Rev#   SMART Error
---------------------------------------------------------
  0    ST380013  AS                  8.05    N
  1    ST380013  AS                  8.05    N
  2    ST380013  AS                  8.05    N
  3    ST380013  AS                  8.05    N

Array#0 - RAID-5      223.41 GB     Optimal
1 Array(s) Found


BIOS Installed Successfully!


>How-To-Repeat:
	

Boot a 6.0-REL CD on a Dell PE 800 with a CERC SATA RAID card on it, or
upgrade a 5.4 system and boot the new kernel.

>Fix:

	

Boot back to 5.4 (/boot/kernel.old/) and it works fine.

This is an office general mail/file server so I'm willing to play with fixes
to test things out.
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list