GPT boot with ZFS RAIDZ "ZFS: i/o error - all block copies unavailable"

Jonathan jonathan at kc8onw.net
Fri Jun 26 03:57:10 UTC 2009


I've tried so many things today I don't even remember them all but I 
will try to make the list as complete as I can.

I recently purchased a new server with 3 450GB SAS drives on an mfi 
controller and 2 Xeon 5550 processors.  I'm trying to install FreeBSD 
current with a ZFS RAIDZ pool booting from GPT.

I have a USB drive booting ZFS based on the 200905 current snapshot.  I 
downloaded the latest svn source and built it.  LOADER_ZFS_SUPPORT=YES 
was set for the build.

Once the build was complete I did the following to create and populate 
the pool on the 3 SAS drives while booted from the USB drive:

gpart create -s GPT mfid[0-2]
gpart show mfid0 # to get sector count
gpart add -b 34 -s 128 -t freebsd-boot mfid[0-2]
gpart add -b 162 -s 876,951,323 -t freebsd-zfs mfid[0-2]

gpart bootcode -b /usr/obj/amd64/usr/src/sys/boot/i386/pmbr/pmbr -p 
/usr/obj/amd64/usr/src/sys/boot/i386/gptzfsboot/gptzfsboot -i 1 mfid[0-2]

zpool create serenity raidz /dev/mfid[0-2]p2

make installworld TARGET=amd64 DESTDIR=/serenity
make installkernel TARGET=amd64 DESTDIR=/serenity
mergemaster -D /serenity/etc/ -i

created an empty fstab
copied /boot/zfs/zpool.cache to the new pool

I did not export the pool as some searching showed that this will cause 
the boot to fail.

I currently seem to be having 2 issues.  One is that I get several 
screenfulls of "error 1 lba xxx" with numbers like 4292179434 and 
4292179446.  Similar errors were reported here 
http://lists.freebsd.org/pipermail/freebsd-fs/2008-December/005511.html 
but I did not find anything in that thread that worked for me.  The 
error message itself comes from here 
http://svn.freebsd.org/viewvc/base/head/sys/boot/i386/gptboot/gptboot.c?revision=181436&view=markup

The loader then proceeds to load the kernel, opensolaris, and zfs 
modules.  Right before the displaying the loader menu it shows the 
message "ZFS: i/o error - all block copies unavailable" which comes from 
here 
http://svn.freebsd.org/viewvc/base/head/sys/boot/zfs/zfsimpl.c?revision=192194&view=markup

If I continue from the loader screen the kernel loads and initializes 
and fails with
"Trying to mount root from zfs:serenity
ROOT MOUNT ERROR:
If you have invalid"...

"Loader variables:
vfs.root.mountfrom=zfs:serenity
zfs.root.mountfrom.options="

At this point I can't do anything because the USB keyboard does not 
respond and the system has no PS/2 ports.

I'd love to get this working and any help is much appreciated.  I still 
have the USB drive booting the 200905 snapshot and the livefs DVD 
snapshot available.

Thanks,
Jonathan

P.S. if someone wants to do some testing on a 16 core machine with 6GB 
of RAM please let me know.  I have a week or so to play with the machine.



More information about the freebsd-current mailing list