Skip site navigation (1)Skip section navigation (2)
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>