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

Toomas Soome tsoome at me.com
Thu Apr 6 19:49:02 UTC 2017


Yes, sorry, I did miss the sparc version, looking on it….

rgds,
toomas


> On 6. apr 2017, at 22:41, Bryan Drewery <bdrewery at FreeBSD.org> wrote:
> 
> On 4/6/2017 11:17 AM, 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
> 
> 
> Something seems wrong in make universe:
> 
>> cc -isystem /usr/obj/sparc64.sparc64/root/git/freebsd/tmp/usr/include -L/usr/obj/sparc64.sparc64/root/git/freebsd/tmp/usr/lib -B/usr/obj/sparc64.sparc64/root/git/freebsd/tmp/usr/lib --sysroot=/usr/obj/sparc64.sparc64/root/git/freebsd/tmp -B/usr/obj/sparc64.sparc64/root/git/freebsd/tmp/usr/bin -O2 -pipe -DLOADER_DISK_SUPPORT -DLOADER_UFS_SUPPORT -DLOADER_CD9660_SUPPORT -DLOADER_ZFS_SUPPORT -I/root/git/freebsd/sys/boot/sparc64/zfsloader/../../zfs -I/root/git/freebsd/sys/boot/sparc64/zfsloader/../../../cddl/boot/zfs -DLOADER_GZIP_SUPPORT -DLOADER_NET_SUPPORT -DLOADER_NFS_SUPPORT -DLOADER_TFTP_SUPPORT -DBOOT_FORTH -I/root/git/freebsd/sys/boot/sparc64/zfsloader/../../ficl -I/root/git/freebsd/sys/boot/sparc64/zfsloader/../../ficl/sparc64 -DLOADER_DISK_SUPPORT -DLOADER_GPT_SUPPORT -DLOADER_MBR_SUPPORT -DLOADER_GELI_SUPPORT -I/root/git/freebsd/sys/boot/ficl -I/root/git/freebsd/sys/boot/ficl/sparc64 -I/root/git/freebsd/sys/boot/ficl/../common -I/root/git/freebsd/sys/boot/sparc64/zfsloader/../../common -I. -I/root/git/freebsd/sys/boot/sparc64/zfsloader/../../ofw/libofw/ -I/root/git/freebsd/sys/boot/sparc64/zfsloader/../../../../lib/libstand/ -I/root/git/freebsd/sys -ffreestanding -std=gnu99 -static -nostdlib -o zfsloader locore.o main.o metadata.o vers.o boot.o commands.o console.o devopen.o interp.o interp_backslash.o interp_parse.o ls.o misc.o module.o panic.o load_elf64.o reloc_elf64.o dev_net.o disk.o part.o crc32.o interp_forth.o  /usr/obj/sparc64.sparc64/root/git/freebsd/sys/boot/sparc64/zfsloader/../../ficl/libficl.a /usr/obj/sparc64.sparc64/root/git/freebsd/sys/boot/sparc64/zfsloader/../../zfs/libzfsboot.a /usr/obj/sparc64.sparc64/root/git/freebsd/sys/boot/sparc64/zfsloader/../../ofw/libofw/libofw.a -lstand
>> --- zfsloader ---
>> /usr/obj/sparc64.sparc64/root/git/freebsd/sys/boot/sparc64/zfsloader/../../zfs/libzfsboot.a(zfs.o): In function `zfs_probe':
>> zfs.c:(.text+0x7f28): undefined reference to `ldi_get_size'
>> *** [zfsloader] Error code 1
> 
> 
> 
> -- 
> Regards,
> Bryan Drewery
> 



More information about the svn-src-all mailing list