problem booting to multi-vdev root pool [Was: kern/150503: [zfs] ZFS disks are UNAVAIL and corrupted after reboot]
Niclas Zeising
zeising at daemonic.se
Fri Nov 16 16:13:19 UTC 2012
On 11/16/12 16:45, Andriy Gapon wrote:
> on 13/11/2012 18:16 Guido Falsi said the following:
>> My idea, but is just a speculation, i could be very wrong, is that the geom
>> tasting code has some problem with multiple vdev root pools.
>
> Guido,
>
> you are absolutely correct. The code for reconstructing/tasting a root pool
> configuration is a modified upstream code, so it inherited a limitation from it:
> the support for only a single top-level vdev in a root pool.
> I have an idea how to add the missing support, but it turned out not to be
> something that I can hack together in couple of hours.
>
> So, instead I wrote the following patch that should fall back to using a root pool
> configuration from zpool.cache (if it's present there) for a multi-vdev root pool:
> http://people.freebsd.org/~avg/zfs-spa-multi_vdev_root_fallback.diff
>
> The patch also fixes a minor (single-time) memory leak.
>
> Guido, Bartosz,
> could you please test the patch?
>
> Apologies for the breakage.
>
Just to confirm, since I am holding back an update pending on this.
If I have a raidz root pool, with three disks, like this:
NAME STATE READ WRITE CKSUM
zroot ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
gpt/disk0 ONLINE 0 0 0
gpt/disk1 ONLINE 0 0 0
gpt/disk2 ONLINE 0 0 0
Then I'm fine to update without issues. the problem is only if, as an
example, you have a mirror with striped disks, or a stripe with mirrored
disks, which it seems to me the original poster had.
Am I correct, and therefore ok to update?
Regards!
--
Niclas Zeising
More information about the freebsd-fs
mailing list