git: 238271f4a66b - main - stand: Add a snarky note about the upstream ZFS situation

From: Warner Losh <imp_at_FreeBSD.org>
Date: Tue, 18 Apr 2023 21:31:28 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=238271f4a66bd06b8b9a232a82f3ee0882e4cbb9

commit 238271f4a66bd06b8b9a232a82f3ee0882e4cbb9
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2023-04-18 21:29:45 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2023-04-18 21:31:17 +0000

    stand: Add a snarky note about the upstream ZFS situation
    
    The latest import of openzfs broke the hacks that we used to omit the
    special registers being used on arm64. Add snarky note documenting this
    situation since it's a mess now since the hack was only partially
    undone, leaving behind a mess.
    
    Sponsored by:           Netflix
---
 stand/libsa/zfs/Makefile.inc | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/stand/libsa/zfs/Makefile.inc b/stand/libsa/zfs/Makefile.inc
index f4cecdbc3085..7660f4ab7baf 100644
--- a/stand/libsa/zfs/Makefile.inc
+++ b/stand/libsa/zfs/Makefile.inc
@@ -19,6 +19,7 @@ ZSTD_SRC+=	zstd_common.c
 ZSTD_SRC+=	zstd_ddict.c zstd_decompress.c zstd_decompress_block.c
 ZSTD_SRC+=	zstd_double_fast.c zstd_fast.c zstd_lazy.c zstd_ldm.c
 
+# This is completely bogus: We should be able to omit this code completely.
 .if ${MACHINE_ARCH} == "aarch64"
 ZFS_SRC_AS =	b3_aarch64_sse2.S b3_aarch64_sse41.S
 .endif
@@ -90,10 +91,13 @@ CFLAGS.skein_block.c+=	-DSKEIN_LOOP=111
 
 # To find blake3_impl.c in OpenZFS tree for our somehat ugly blake3_impl_hack.c
 # that's needed until the necessary tweaks can be upstreamed.
+# XXX the last import gutted all this since upstream changes broke this hack.
 CFLAGS.blake3_impl_hack.c+= -I${OZFS}/module/icp/algs/blake3 -I${OZFS}/module/icp/include
 
 CWARNFLAGS.zfs.c+= ${NO_WDANGLING_POINTER}
 
+# Needing to remove the -mgeneral-regs-only is a red flag that this is not quite
+# right. But it's needed at the moment due to the muddled upstream.
 b3_aarch64_sse2.o: b3_aarch64_sse2.S
 	${CC} -c ${CFLAGS:N-mgeneral-regs-only} ${WERROR} ${.IMPSRC} \
 	    -o ${.TARGET}