problem booting to multi-vdev root pool [Was: kern/150503: [zfs] ZFS disks are UNAVAIL and corrupted after reboot]

Bartosz Stec bartosz.stec at
Sun Nov 18 00:26:55 UTC 2012

W dniu 2012-11-16 17:17, Guido Falsi pisze:
> 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.
> I can imagine, it does not look simple in any way!
>> 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:
>> The patch also fixes a minor (single-time) memory leak.
>> Guido, Bartosz,
>> could you please test the patch?
> I have just compiler an r242910 kernel with this patch (and just this 
> one) applied.
> System booted so it seems to work fine! :)
I've just compiled and installed fresh kernel with your patch, system 
booted without any problems, so apparently patch works as intended.
Good job Andriy!

>> Apologies for the breakage.
> No worries, and thanks for this fix.
> Also thanks for all the work on ZFS!
Make it twice :)


Bartosz Stec

More information about the freebsd-current mailing list