Date: Sat, 5 Nov 2011 19:02:22 -0700 From: Garrett Cooper <yanegomi@gmail.com> To: Andriy Gapon <avg@FreeBSD.org> Cc: Henri Hennebert <hlh@restart.be>, freebsd-fs@FreeBSD.org, freebsd-current@FreeBSD.org Subject: Re: zfsloader 9.0 BETA3 r225759 - i/o error - all block copies unavailable Message-ID: <23A28BD1-8F02-42D3-8BE3-0F90C3702955@gmail.com> In-Reply-To: <4E9D8FBF.3030502@FreeBSD.org> References: <4E8D7406.4090302@restart.be> <4E8D86A2.1040508@FreeBSD.org> <4E8D9F57.70506@restart.be> <4E8DAEE5.4020004@FreeBSD.org> <4E9D566F.1040104@restart.be> <4E9D8FBF.3030502@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Oct 18, 2011, at 7:39 AM, Andriy Gapon wrote: > on 18/10/2011 13:35 Henri Hennebert said the following: >> I upgrade another system to 9.0-RC1 and encounter the same problem, = this time >> zfsloader do not run. >>=20 >> After >>=20 >> mv /mnt/boot /mnt/Boot >> mkdir /mnt/boot >> cd /mnt/Boot >> find . | cpio -pvdmu /mnt/boot >>=20 >> FreeBSD boot OK >>=20 >>=20 >> [root@avoriaz zfsboottest]# ./zfsboottest /Boot/zfsloader /dev/ada0p2 = /dev/ada1p2 >> ZFS: SPA version 28 >> pool: rpool >> config: >>=20 >> NAME STATE >> rpool ONLINE >> mirror ONLINE >> ada0p2 ONLINE >> ada1p2 ONLINE >> ZFS: i/o error - all block copies unavailable >> can't lookup >>=20 >> 10 minutes later: >>=20 >> [root@avoriaz zfsboottest]# ./zfsboottest /Boot/zfsloader /dev/ada0p2 >> /dev/ada1p2|less >> ZFS: SPA version 28 >> pool: rpool >> config: >>=20 >> NAME STATE >> rpool ONLINE >> mirror ONLINE >> ada0p2 ONLINE >> ada1p2 ONLINE >> <blablabla> >>=20 >> it seems ok :-o >>=20 >> and a other time: >> [root@avoriaz zfsboottest]# ./zfsboottest /Boot/zfsloader /dev/ada0p2 >> segmentation fault... >>=20 >> Strange isn't it. >=20 > I think that it would be smart to not do any filesystem modifications = after the > problem is detected / reproduced. > Also, currently zfsboottest doesn't do much of a problem = self-diagnostics, so > using gdb or/and adding some printfs in the code are required to = understand a > nature of a problem. Like what kind of block gives an I/O error, if = it actual > reading that fails or checksum verification or etc, and so on. Running into the same issue with a post-RC1 kernel. 1. ZFS on root. 2. stable/9. 3. Here's my zpool status output: $ zpool status pool: sac state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM sac ONLINE 0 0 0 ada0p3 ONLINE 0 0 0 errors: No known data errors pool: store state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM store ONLINE 0 0 0 mfid0p1 ONLINE 0 0 0 errors: No known data errors $ sudo ./zfsboottest /boot/zfsloader /dev/ada0p3=20 # Spits out the zpool status and a lot of other boot gobbledygook. If I use the new gptzfsboot, then my system becomes unbootable = with the old kernel (it can't find the zpool). gpart bootcode -b /mnt2/boot/pmbr -p /mnt2/boot/gptzfsboot -i 1 ada0 It spits out "I/O error - all block copies unavailable" at boot; = if I manually did boot <kernel>, then everything worked. So I figured it = was an environmental issue. I changed /boot/kernel from a symlink to a = kernel directory to a standard directory and things worked as expected. Your issue might be similar, but it would be nice if booting = from symlinks was either fixed or enhanced to work properly with = gptzfsboot. Thanks, -Garrett
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?23A28BD1-8F02-42D3-8BE3-0F90C3702955>