svn commit: r316585 - in head/sys/boot: efi/boot1 efi/loader i386/common i386/loader i386/zfsboot zfs

Toomas Soome tsoome at me.com
Sun Apr 9 08:12:19 UTC 2017


> On 9. apr 2017, at 1:16, Shawn Webb <shawn.webb at hardenedbsd.org> wrote:
> 
> On Thu, Apr 06, 2017 at 06:17:29PM +0000, Toomas Soome wrote:
>> Author: tsoome
>> Date: Thu Apr  6 18:17:29 2017
>> New Revision: 316585
>> URL: https://svnweb.freebsd.org/changeset/base/316585
>> 
>> Log:
>>  loader: zfs reader should check all labels
>> 
>>  The current zfs reader is only checking first label from each device, however,
>>  we do have 4 labels on device and we should check all 4 to be protected
>>  against disk failures and incomplete label updates.
>> 
>>  The difficulty is about the fact that 2 label copies are in front of the
>>  pool data, and 2 are at the end, which means, we have to know the size of
>>  the pool data area.
>> 
>>  Since we have now the mechanism from common/disk.c to use the partition
>>  information, it does help us in this task; however, there are still some
>>  corner cases.
>> 
>>  Namely, if the pool is created without partition, directly on the disk,
>>  and firmware will give us the wrong size for the disk, we only can check
>>  the first two label copies.
>> 
>>  Reviewed by:	allanjude
>>  Differential Revision:	https://reviews.freebsd.org/D10203
> 
> This breaks bhyve userboot:
> 
> # sh /usr/share/examples/bhyve/vmrun.sh -c 8 -m 16g -t tap4 -C /dev/nmdm-laptop-dev-03-A -d /dev/zvol/enctank/bhyve/laptop-dev-03/disk-01 laptop-dev-03
> /boot/userboot.so: Undefined symbol "ldi_get_size"
> 
> Thanks,
> 
> -- 
> Shawn Webb
> Cofounder and Security Engineer
> HardenedBSD
> 
> GPG Key ID:          0x6A84658F52456EEE
> GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE


Yep, the fix is posted as part of https://reviews.freebsd.org/D10302 <https://reviews.freebsd.org/D10302> - I’m currently running the build to double check and I think I’ll make the userboot commit  as soon as it is verified. Sorry for the mess.

rgds,
toomas



More information about the svn-src-all mailing list