Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Oct 2009 11:17:40 +0100
From:      "Merijn Verstraaten" <merijn@inconsistent.nl>
To:        "freebsd-current@freebsd.org" <freebsd-current@freebsd.org>
Subject:   Re: GPT boot with ZFS RAIDZ "ZFS: i/o error - all block copies unavailable"
Message-ID:  <op.u2gevqqg4534sa@localhost>
In-Reply-To: <1256571299.2502.219.camel@balrog.2hip.net>
References:  <op.u2dqyh1o4534sa@localhost> <1256517106.2502.205.camel@balrog.2hip.net> <op.u2ehpmzo4534sa@localhost> <1256571299.2502.219.camel@balrog.2hip.net>

next in thread | previous in thread | raw e-mail | index | archive | help
My apologies to Robert for the double message, mis-addressed the first  
reply to him instead of the list.

On Mon, 26 Oct 2009 16:34:59 +0100, Robert Noland <rnoland@freebsd.org>
wrote:
>> If I type status at this point I get:
>>
>>    pool: tank
>>    config:
>>        NAME    STATE
>>        tank   ONLINE
>>      raidz1   ONLINE
>>       ad4p3   ONLINE
>>       ad6p3   ONLINE
>>       ad8p3   ONLINE
>>      ad10p3   ONLINE
>>
>> Which seems odd, since that's all the drives there are. So if it finds
>> these it's already found all drives. My optimistic "Oh! I'll try and  
>> boot
>> again" spirit was however crushed since it just results in the same  
>> error.
>
> Ok, that is both good and frustrating... I haven't produced any boot
> failures with all of the drives visible.  Do, note that I just added
> support for reading gang blocks to the loader. (basically untested,
> since I haven't managed to create them at will)  You will need to update
> your partition boot code for it to be supported during early boot.  i.e.
> gpart bootcode -p /boot/gptzfsboot -i <boot partition> <disk>

I tried again yesterday evening by recompiling RELENG_8 and -CURRENT. I
somehow managed to boot into RELENG_8 the first time, but after that this
error comes up:

     ZFS: i/o error - all block copies unavailable
     ZFS: can't read object set for dataset ldd
     Can't find root filesystem - giving up
     ZFS: unexpected object set type ldd
     ZFS: unexpected object set type ldd

     FreeBSD/i386 boot
     Default:/ tank:/boot/kernel/kernel
     boot:
     ZFS: unexpected object set type ldd

     FreeBSD/i386 boot
     Default:/ tank:/boot/kernel/kernel
     boot: status

      pool: tank
      config:
          NAME    STATE
          tank   ONLINE
        raidz1   ONLINE
         ad4p3   ONLINE
         ad6p3   ONLINE
         ad8p3   ONLINE
        ad10p3   ONLINE

After recompiling world/kernel for -CURRENT I get roughly the same error:

     ZFS: i/o error - all block copies unavailable
     ZFS: can't read object set for dataset 30
     Can't find root filesystem - giving up
     ZFS: unexpected object set type 0
     ZFS: unexpected object set type 0

     FreeBSD/i386 boot
     Default:/ tank:/boot/kernel/kernel
     boot:
     ZFS: unexpected object set type ldd

     FreeBSD/i386 boot
     Default:/ tank:/boot/kernel/kernel
     boot: status

      pool: tank
      config:
          NAME    STATE
          tank   ONLINE
        raidz1   ONLINE
         ad4p3   ONLINE
         ad6p3   ONLINE
         ad8p3   ONLINE
        ad10p3   ONLINE

> The "all block copies unavailable" is a frustrating error, since all it
> means is a failed read, but we don't get a clue what failed or why.
> With the code that is in -CURRENT it will report gang blocks if found,
> even if it fails to read them.
> robert.

I've seen no mention of gang blocks in the errors so far.

Kind regards,
Merijn



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?op.u2gevqqg4534sa>