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: >=20 >=20 > Yes, sorry, I did miss the sparc version, looking on it=E2=80=A6. I did quick and =E2=80=9Cdirty=E2=80=9D first round, but really need = some help there, please check and comment: = https://reviews.freebsd.org/D10302 <https://reviews.freebsd.org/D10302>=20= >=20 > rgds, > toomas >=20 >=20 >> On 6. apr 2017, at 22:41, Bryan Drewery <bdrewery@FreeBSD.org> wrote: >>=20 >> 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 >>>=20 >>> Log: >>> loader: zfs reader should check all labels >>>=20 >>> 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. >>>=20 >>> 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. >>>=20 >>> 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. >>>=20 >>> 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. >>>=20 >>> Reviewed by: allanjude >>> Differential Revision: https://reviews.freebsd.org/D10203 >>=20 >>=20 >> Something seems wrong in make universe: >>=20 >>> 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=3D/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=3Dgnu99 -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 >>=20 >>=20 >>=20 >> --=20 >> Regards, >> Bryan Drewery >>=20 >=20 >=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E6EA5276-DD87-4430-A711-E6320F761ABE>