ahci+zfs+gvinum will panci on boot

Edward Sanford Sutton, III mirror176 at cox.net
Sun Nov 21 07:32:39 UTC 2010

  On FreeBSD 8.1-release, I was unable to load ahci without causing a system 
panic. Since recently going to FreeBSD 8.1-STABLE #0: Fri Nov 19 12:17:12 
MST, I have been able to boot with ahci loaded as a module but it leaves my 
two mirrored root-on-zfs main drives as ad devices while attaching to my 
three gvinum controlled drives so they become ada devices.
  I tried recompiling my -stable kernel to make ahci take over the disks but 
found the system goes back to a panic state on boot until I remove loading 
gvinum from /boot/loader.conf, at which point all disks attach as ada 
The kernel configuration changes are:
--- /usr/src/sys/amd64/conf/GENERIC     2010-10-25 00:58:37.000000000 -0700
+++ /root/kernels/MYKERNEL8     2010-11-19 12:10:37.362055289 -0700
@@ -95,11 +95,12 @@
 # ATA and ATAPI devices
 device         ata
-device         atadisk         # ATA disk drives
-device         ataraid         # ATA RAID drives
+device         ahci
+#device                atadisk         # ATA disk drives
+#device                ataraid         # ATA RAID drives
 device         atapicd         # ATAPI CDROM drives
-device         atapifd         # ATAPI floppy drives
-device         atapist         # ATAPI tape drives
+#device                atapifd         # ATAPI floppy drives
+#device                atapist         # ATAPI tape drives
 options        ATA_STATIC_ID   # Static device numbering
 # SCSI Controllers

and the panic as best as I could get from a camcorder recording of my screen 

GEOM: new disk ada4
GEOM: ada0s2: geometry does not match label (255,63s != 16h,63s).
GEOM: ada1s2: media size does not match label
GEOM: ada2s2: geometry does not match label (255,63s != 16h,63s).

[possible data skipped due to screen scroll; text is blurry so may contain 

Instruction pointer	= 0x20:0xffffffff80546bad
stack pointer		= 0x28:0xffffff80e5fa2b20
frame pointer		= 0x28:0xffffff80ef5a2b70
code segment		= base 0x0, limit 0xfffff, type 0x1b
				= BPL 0, pros 1, long 1, def32 0, gran 1
processor eflags	= interrupt enabled, resume, IOPL=0
current process	= 8 (gv_vorker)
trap number		= 12
panic: page fault
cpuid = 0
KDB: stack backtrace:
#0 0xffffffff805d701e at kdb_backtrace+0x5e
#1 0xffffffff805a5167 at panic+0x187
#2 0xffffffff80890bb0 at trap_fatal+0x290
#3 0xffffffff80890f8f at trap_pfault+0x28f
#4 0xffffffff808917d6 at trap+0x346
#5 0xffffffff808766b4 at caclltrap 0x8
#6 0xffffffff81035c54 at gv_plex_start+0x154
#7 0xffffffff81032362 at gv_worker+0x11f2
#8 0xffffffff8057b968 at fork_exit+0x110
#9 0xffffffff80876b8e at fork_trampoline+0xe
Uptime: 10s
Cannot dump. Device not defined or unavailable.
Automatic reboot in 15 seconds = press a key on the console to abort.

All 5 hard drives are attached to atapci1: <ATI IXP700/800 UDMA133 controller> 
port 0x1f0-0x1f7,0x3f6,0x170-0x177, 0x376,0xff00-0xff0f at device 20.1 on 
Optical drives are attached to the following two interfaces:
ahci0: <JMicron JMB363 AHCI SATA controller> mem 0xfeafe000-0xfeafffff irq 17 
at device 0.0 on pci5
atapci0: <JMicron JMB363 UDMA133 controller> port 
0xd800-0xd807,0xd400-0xd403,0x d000-0xd007,0xc800-0xc803,0xc400-0xc40f irq 18 
at device 0.1 on pci5

If any further information would be helpful, let me know. I have not been able 
to get a dump from the panics (which is likely my bad in some way). Maybe I 
can yank out one of the two 2GB sticks of ram and setup my flash drive as a 
swap device, but will it be available soon enough? The motherboard doesnt 
have a serial port connector, but I think there is a header to attach one. If 
useful, I can look into linking it to my dad's old computer's serial port 
that way.
Edward Sanford Sutton, III

More information about the freebsd-stable mailing list