AHCI and ZFS: root mount error

Jeremy Chadwick freebsd at jdc.parodius.com
Sat Jan 16 01:27:33 UTC 2010


On Sat, Jan 16, 2010 at 01:48:12AM +0100, Romain Garbage wrote:
> 2010/1/16, Volodymyr Kostyrko <c.kworr at gmail.com>:
> > On Fri, 15 Jan 2010 21:13:39 +0100
> > Romain Garbage <romain.garbage at gmail.com> wrote:
> >
> >> After setting ahci_load="YES" in /boot/loader.conf, I get a root mount
> >> error.
> >> ahci seems to attach to disk correctly (I get ada0 messages with no error)
> >>
> >> Without ahci_load="YES", system boots fine, with ata module attaching to
> >> disk.
> >>
> >> I have a full zfs system, set up following wiki instructions:
> >> http://wiki.freebsd.org/RootOnZFS/ZFSBootPartition
> >> (MBR scheme, ZFS in a FreeBSD slice, together with a swap partition)
> >>
> >> I'm using a GENERIC kernel, RELENG_8 branch.
> >
> > I have faced some problems that looks exactly like you say. I haven't
> > investigated thoroughly after some quick-hack-repairs machine runs
> > flawlessly.
> >
> > 1. I have moved to RELENG_8 from RELENG_8_0. I don't think this is it but
> > zfsloader support was what I was looking for.
> >
> > 2. I reinitialised zfs partitions again with a boot code. But this time I
> > used bs=512 dd option.
> >
> > 3. I recreated zpool.cache and replaced it on my pool.
> >
> > Actually I don't know which one helped me, but my bet is for the third step
> > and maybe for second.
> 
> A weird thing:
> 
> I just built and installed a new kernel (RELENG_8, source csuped a few
> hours ago), just adding "device ahci" to the config file. I get the
> same error, with driver attaching correctly.
> 
> Now, adding ahci_load="NO" to /boot/loader.conf and booting the new
> custom kernel, it just boots fine, ahci attaching to the device, and
> zfs root gets mounted.
> 
> dmesg | grep ada
> 
> ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
> ada0: <ST9250320AS 0303> ATA-8 SATA 2.x device
> ada0: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO size 8192bytes)cd0
> at ahcich1 bus 0 scbus1 target 0 lun 0
> ada0: Command Queueing enabled
> ada0: 238475MB (488397168 512 byte sectors: 16H 63S/T 16383C)
> ada1 at ahcich2 bus 0 scbus2 target 0 lun 0
> ada1: <SAMSUNG HM500JI 2AC101C4> ATA-8 SATA 2.x device
> ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO size 8192bytes)
> ada1: Command Queueing enabled
> ada1: 476940MB (976773168 512 byte sectors: 16H 63S/T 16383C)
> ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
> ada0: <ST9250320AS 0303> ATA-8 SATA 2.x device
> ada0: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO size 8192bytes)cd0
> at ahcich1 bus 0 scbus1 target 0 lun 0
> ada0: Command Queueing enabled
> ada0: 238475MB (488397168 512 byte sectors: 16H 63S/T 16383C)
> ada1 at ahcich2 bus 0 scbus2 target 0 lun 0
> ada1: <SAMSUNG HM500JI 2AC101C4> ATA-8 SATA 2.x device
> ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO size 8192bytes)
> ada1: Command Queueing enabled
> ada1: 476940MB (976773168 512 byte sectors: 16H 63S/T 16383C)
> 
> I didn't do anything else, just the line in loader.conf, and the
> system just works fine.

Can you post your entire kernel configuration file?  Thanks.

-- 
| Jeremy Chadwick                                   jdc at parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |



More information about the freebsd-stable mailing list