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

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to