"Fatal trap" when unloading usb2_controller_ehci

From: Bruce Cran <bruce_at_cran.org.uk>
Date: Sun, 8 Feb 2009 00:16:56 +0000
Unloading usb2_controller_ehci is crashing FreeBSD on -CURRENT
from a few days ago, resulting in a "Fatal trap" that isn't immediately
fatal but ends up knocking out the rest of the system.

Shortly after issuing a kldunload, the kernel drops into DDB with:

Fatal trap 30: reserved (unknown) fault while in kernel mode
cpuid = 0; apic id = 00
instruction pointer = 0x8 : 0xffffffff804bc646
stack pointer       = 0x10: 0xfffffffe40023b70
frame pointer       = 0x10: 0xfffffffe40023b80
code segment        = base 0x0, limit 0xfffff, type 0x1b
processor eflags    = interrupt enabled, IOPL = 0
current process     = 11 (idle : cpu0)
[thread pid 11 tid 100004]
Stopped at acpi_cpu_c1+0x6 : leave

A backtrace just shows that the idle task was running at the time of
the trap.  Attempting to continue results in a load of "calcru: runtime
went backwards" messages followed by the ATA driver dying with:

WARNING - SETFEATURES SET TRANSFER MODE taskqueue timeout - completing
request directly

Then follows similar messages about SET_MULTI, ENABLE RCACHE,
ENABLE_WCACHE and WRITE_DMA48 etc.

-- 
Bruce Cran
Received on Sat Feb 07 2009 - 23:17:04 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:41 UTC