Date: Tue, 12 Dec 2023 18:14:47 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: John Baldwin <jhb@freebsd.org> Cc: "src-committers@freebsd.org" <src-committers@FreeBSD.org>, "dev-commits-src-all@freebsd.org" <dev-commits-src-all@FreeBSD.org>, "dev-commits-src-main@freebsd.org" <dev-commits-src-main@FreeBSD.org> Subject: Re: git: fb17dfa0c83c - main - libicp: unbreak for armv6 after recent OpenZFS import Message-ID: <C9583E92-D6EB-4B7D-B26E-3B86C8E84EB0@FreeBSD.org> In-Reply-To: <098c85ab-4210-455c-a3b9-773bf0ce87b7@FreeBSD.org> References: <202312082310.3B8NA5cI026712@gitrepo.freebsd.org> <098c85ab-4210-455c-a3b9-773bf0ce87b7@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_54F359DF-2321-45A5-A23F-3405194A80EB Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 12 Dec 2023, at 17:01, John Baldwin <jhb@freebsd.org> wrote: >=20 > On 12/8/23 3:10 PM, Dimitry Andric wrote: >> The branch main has been updated by dim: >> URL: = https://cgit.FreeBSD.org/src/commit/?id=3Dfb17dfa0c83cc213400fe7e1ed7a3925= 3a4fcefa >> commit fb17dfa0c83cc213400fe7e1ed7a39253a4fcefa >> Author: Dimitry Andric <dim@FreeBSD.org> >> AuthorDate: 2023-12-08 23:09:36 +0000 >> Commit: Dimitry Andric <dim@FreeBSD.org> >> CommitDate: 2023-12-08 23:09:50 +0000 >> libicp: unbreak for armv6 after recent OpenZFS import >> The following upstream commit: >> 727497ccdfcc module/icp/asm-arm/sha2: enable non-SIMD asm kernels = on armv5/6 >> does indeed enable sha2 asm for earlier arm CPUs, but since = libicp's >> Makefile was not updated, this leads to: >> ld: error: undefined reference due to = --no-allow-shlib-undefined: zfs_sha256_block_armv7 >> Fix it by compiling sha256-armv7.S and sha512-armv7.S for = armv6 too. >> Fixes: 3494f7c019fc >> --- >> cddl/lib/libicp/Makefile | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> diff --git a/cddl/lib/libicp/Makefile b/cddl/lib/libicp/Makefile >> index 2d9bb3c67cb4..085818f2371a 100644 >> --- a/cddl/lib/libicp/Makefile >> +++ b/cddl/lib/libicp/Makefile >> @@ -21,7 +21,7 @@ ASM_SOURCES_AS =3D \ >> asm-x86_64/blake3/blake3_sse41.S >> CFLAGS+=3D -D__amd64 -D_SYS_STACK_H -UHAVE_AES >> -.elif ${MACHINE_ARCH} =3D=3D "armv7" >> +.elif ${MACHINE_ARCH} =3D=3D "armv6" || ${MACHINE_ARCH} =3D=3D = "armv7" >=20 > Since this applies to all 32-bit arm flavors, should this be using > ${MACHINE_CPUARCH} =3D=3D "arm" instead? You may be right; if I read https://github.com/openzfs/zfs/commit/727497ccdfcc correctly: > module/icp/asm-arm/sha2: enable non-SIMD asm kernels on armv5/6 > My merged pull request #15557 fixes compilation of sha2 kernels on arm > v5/6. However, the compiler guards only allows sha256/512_armv7_impl = to > be used when __ARM_ARCH > 6. This patch enables these ASM kernels on = all > arm architectures. Some compiler guards are adjusted accordingly to > avoid the unnecessary compilation of SIMD (e.g., neon, armv8ce) = kernels > on old architectures. > > Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> > Signed-off-by: Shengqi Chen <harry-chen@outlook.com> > Closes #15623 It's talking about "all arm architectures", but I'm not sure if this means all arm architectures supported by OpenZFS, or in general. I would assume the latter. -Dimitry --Apple-Mail=_54F359DF-2321-45A5-A23F-3405194A80EB Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.2 iF0EARECAB0WIQR6tGLSzjX8bUI5T82wXqMKLiCWowUCZXiVBwAKCRCwXqMKLiCW o2d+AJ41TMrVnxeOArpfC5oU1at8GEZchACgqdeibOgIK7/0EJ0GjAh+3K6nvMA= =kEcF -----END PGP SIGNATURE----- --Apple-Mail=_54F359DF-2321-45A5-A23F-3405194A80EB--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C9583E92-D6EB-4B7D-B26E-3B86C8E84EB0>