ZFS: i/o error - all block copies unavailable after upgrading to r225312

Andriy Gapon avg at FreeBSD.org
Wed Sep 7 16:35:13 UTC 2011


on 02/09/2011 16:35 Andriy Gapon said the following:
> Then:
> - obtain this patch http://people.freebsd.org/~avg/zfstest.head.diff
> - cd sys/boot/zfs
> - apply the patch to zfstest.c
> - cc -I. -I../../cddl/boot/zfs zfstest.c -o zfstest
> - run the resulting binary as root and provide your pool device(s) as
> parameter(s); e.g.:
>   ./zfstest /dev/ada0p4

Thanks to a lot of excellent testing, debugging and analysis from Sebastian (which
went behind the scenes) we now have this patch:
http://people.freebsd.org/~avg/zfs-boot-gang.diff

The patch introduces the following changes:
- checksum is now verified for gang header blocks
- checksum is now verified for reconstituted data of whole gang blocks
  (previously it is verified only for individual gang member leaf blocks)
- reconstituted data of a whole gang block is now decompressed if the gang block
is compressed

The last change is _the_ change.

If you use compression for a filesystem where your kernel resides and you get a
problem with booting, then please test this patch and report back.

Many thanks to Sebastian!
Additional heap of thanks to Doug Rabson who came up with the idea and
implementation of zfstest.c!  This tool is of the immense help when debugging an
issue like this one.

-- 
Andriy Gapon


More information about the freebsd-current mailing list