loader: add aarch64 support for zstd

We don't have NEON available in the boot loader, so we have to disable
it. OpenZFS included ZSTD which used the wrong symbol to bring in neon
support. Change to use the code that's been submitted upstream as a
pull request to both.

__ARM_NEON is the proper symbol, defined in ARM C Language Extensions
Release 2.1 (https://developer.arm.com/documentation/ihi0053/d/). Some
sources suggest __ARM_NEON__, but that's the obsolete spelling from
prior versions of the standard.

OpenZFS Pull Request: https://github.com/openzfs/zfs/pull/11055
ZSTD Pull Request: https://github.com/facebook/zstd/pull/2356
This commit is contained in:
Warner Losh 2020-10-28 21:18:04 +00:00
parent b4e4f070ea
commit 1ef64e3da5

View File

@ -5,10 +5,8 @@
.PATH: ${ZFSOSSRC}/spl
.PATH: ${OZFS}/module/zstd/lib
ZFSSRC= zfs.c nvlist.c skein.c skein_block.c list.c
.if ${MACHINE_ARCH} != aarch64
ZFSSRC+= zstd_shim.c zstd.c
CFLAGS+= -DHAS_ZSTD_ZFS
.endif
SRCS+= ${ZFSSRC}
CFLAGS+= -I${LDRSRC}