Functional RAID controller?

Boris Samorodov bsam at
Thu May 17 17:25:51 UTC 2007

Hi Scott, All!

On Tue, 08 May 2007 22:55:06 -0600 Scott Long wrote:

> I have a pretty good idea of what is wrong, and it's partially my fault.
> A quick work-around would be to edit /sys/dev/twa/tw_osl_freebsd.c and
> remove the INTR_MPSAFE flag as so:

I have today's current (with sys/cam/cam_xpt.c 1.187):
FreeBSD 7.0-CURRENT #0: Thu May 17 16:56:58 MSD 2007
    bsam at
WARNING: WITNESS option enabled, expect reduced performance.
ACPI APIC Table: <PTLTD          APIC  >
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Xeon(R) CPU           E5335  @ 2.00GHz (2000.01-MHz K8-class CPU)
  Origin = "GenuineIntel"  Id = 0x6f7  Stepping = 7
  AMD Features=0x20100800<SYSCALL,NX,LM>
  AMD Features2=0x1<LAHF>
  Cores per package: 4
usable memory = 8576622592 (8179 MB)
avail memory  = 8289337344 (7905 MB)
FreeBSD/SMP: Multiprocessor System Detected: 8 CPUs
3ware device driver for 9000 series storage controllers, version:
twa0: <3ware 9000 series Storage Controller> port 0x3000-0x30ff mem 0xd8000000-0xd9ffffff,0xda300000-0xda300fff irq 16 at device 0.0 on pci8
twa0: [FILTER]
twa0: INFO: (0x04: 0x0053): Battery capacity test is overdue: 
twa0: INFO: (0x15: 0x1300): Controller details:: Model 9650SE-8LPML, 8 ports, Firmware FE9X, BIOS BE9X
panic: blockable sleep lock (sleep mutex) CAM SIMQ lock @ /usr/src/sys/cam/cam_xpt.c:4847
cpuid = 0
KDB: enter: panic
[thread pid 17 tid 100007 ]
Stopped at      kdb_enter+0x2f: nop
db> where
Tracing pid 17 tid 100007 td 0xffffff021eeaa540
kdb_enter() at kdb_enter+0x2f
panic() at panic+0x225
witness_checkorder() at witness_checkorder+0x5db
_mtx_lock_flags() at _mtx_lock_flags+0x75
xpt_done() at xpt_done+0xca
tw_osl_complete_io() at tw_osl_complete_io+0x10c
tw_cli_complete_io() at tw_cli_complete_io+0x80
tw_cli_process_complete_queue() at tw_cli_process_complete_queue+0xa3
tw_cli_process_resp_intr() at tw_cli_process_resp_intr+0x1e3
twa_pci_intr_fast() at twa_pci_intr_fast+0x2b
intr_execute_handlers() at intr_execute_handlers+0x126
Xapic_isr1() at Xapic_isr1+0x7f
--- interrupt, rip = 0xffffffff8065a9b6, rsp = 0xffffffffac2a7be0, rbp = 0xffffffffac2a7bf0 ---
acpi_cpu_c1() at acpi_cpu_c1+0x6
acpi_cpu_idle() at acpi_cpu_idle+0x1a0
sched_idletd() at sched_idletd+0x35
fork_exit() at fork_exit+0xaa
fork_trampoline() at fork_trampoline+0xe
--- trap 0, rip = 0, rsp = 0xffffffffac2a7d30, rbp = 0 ---

Is that a known problem you are working on? If it may help I can
arrange an access to comconsole on that server.


Boris Samorodov (bsam)
Research Engineer, Telephone & Internet SP
FreeBSD committer, The Power To Serve

More information about the freebsd-current mailing list