Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 07 Apr 2017 02:19:44 +0300
From:      Toomas Soome <tsoome@me.com>
To:        Bryan Drewery <bdrewery@FreeBSD.org>
Cc:        Toomas Soome <tsoome@FreeBSD.org>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r316585 - in head/sys/boot: efi/boot1 efi/loader i386/common i386/loader i386/zfsboot zfs
Message-ID:  <E6EA5276-DD87-4430-A711-E6320F761ABE@me.com>
In-Reply-To: <3EFCAFB8-25E6-41A0-A1CF-26B4785FB482@me.com>
References:  <201704061817.v36IHT8i088712@repo.freebsd.org> <06998a2b-fa92-500a-cdf6-5057ca96a76f@FreeBSD.org> <3EFCAFB8-25E6-41A0-A1CF-26B4785FB482@me.com>

next in thread | previous in thread | raw e-mail | index | archive | help


> On 6. apr 2017, at 22:48, Toomas Soome <tsoome@me.com> wrote:
> 
> 
> Yes, sorry, I did miss the sparc version, looking on it….


I did quick and “dirty” first round, but really need some help there, please check and comment: https://reviews.freebsd.org/D10302 <https://reviews.freebsd.org/D10302>; 


> 
> rgds,
> toomas
> 
> 
>> On 6. apr 2017, at 22:41, Bryan Drewery <bdrewery@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
>> 
> 
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E6EA5276-DD87-4430-A711-E6320F761ABE>