Date: Mon, 9 Sep 2024 16:48:12 GMT From: Martin Matuska <mm@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: e2df9bb44109 - main - zfs: merge openzfs/zfs@b10992582 Message-ID: <202409091648.489GmCNu009544@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=e2df9bb44109577475aeb186e7186ac040f9bde1 commit e2df9bb44109577475aeb186e7186ac040f9bde1 Merge: f05795e3f65f b109925820fb Author: Martin Matuska <mm@FreeBSD.org> AuthorDate: 2024-09-09 16:13:02 +0000 Commit: Martin Matuska <mm@FreeBSD.org> CommitDate: 2024-09-09 16:13:02 +0000 zfs: merge openzfs/zfs@b10992582 Notable upstream pull request merges: #15892 -multiple Fast Dedup: Introduce the FDT on-disk format and feature flag #15893 -multiple Fast Dedup: “flat” DDT entry format #15895 -multiple Fast Dedup: FDT-log feature #16239 6be8bf555 zpool: Provide GUID to zpool-reguid(8) with -g #16277 -multiple Fast Dedup: prune unique entries #16316 5807de90a Fix null ptr deref when renaming a zvol with snaps and snapdev=visible #16343 77a797a38 Enable L2 cache of all (MRU+MFU) metadata but MFU data only #16446 83f359245 FreeBSD: fix build without kernel option MAC #16449 963e6c9f3 Fix incorrect error report on vdev attach/replace #16505 b10992582 spa_prop_get: require caller to supply output nvlist Obtained from: OpenZFS OpenZFS commit: b109925820fb79db3e37670c159977f03edd950f cddl/lib/libicp/Makefile | 1 + cddl/lib/libicp_rescue/Makefile | 1 + cddl/lib/libzfs/Makefile | 3 +- cddl/lib/libzpool/Makefile | 8 +- cddl/sbin/zpool/Makefile | 2 + cddl/usr.bin/zinject/Makefile | 1 + cddl/usr.bin/zstream/Makefile | 2 + cddl/usr.bin/ztest/Makefile | 1 + cddl/usr.sbin/zdb/Makefile | 1 + cddl/usr.sbin/zfsd/Makefile.common | 1 + cddl/usr.sbin/zhack/Makefile | 1 + lib/libbe/Makefile | 1 + sys/cddl/boot/zfs/zfssubr.c | 4 +- sys/conf/files | 2 + sys/contrib/openzfs/META | 2 +- sys/contrib/openzfs/cmd/Makefile.am | 4 +- sys/contrib/openzfs/cmd/mount_zfs.c | 5 +- sys/contrib/openzfs/cmd/raidz_test/Makefile.am | 2 +- sys/contrib/openzfs/cmd/zdb/Makefile.am | 2 +- sys/contrib/openzfs/cmd/zdb/zdb.c | 486 +++-- sys/contrib/openzfs/cmd/zed/agents/zfs_diagnosis.c | 15 +- sys/contrib/openzfs/cmd/zpool/zpool_main.c | 136 +- sys/contrib/openzfs/cmd/zstream/Makefile.am | 2 + .../openzfs/cmd/zstream/zstream_decompress.c | 124 +- .../openzfs/cmd/zstream/zstream_recompress.c | 110 +- sys/contrib/openzfs/cmd/ztest.c | 30 +- sys/contrib/openzfs/config/Rules.am | 8 +- .../contrib/debian/openzfs-zfsutils.install | 1 + sys/contrib/openzfs/include/Makefile.am | 1 + sys/contrib/openzfs/include/libzfs.h | 4 + sys/contrib/openzfs/include/libzfs_core.h | 3 + sys/contrib/openzfs/include/os/freebsd/Makefile.am | 2 + .../include/os/freebsd/zfs/sys/abd_impl_os.h | 41 + .../openzfs/include/os/freebsd/zfs/sys/abd_os.h | 46 + sys/contrib/openzfs/include/os/linux/Makefile.am | 2 + .../openzfs/include/os/linux/spl/sys/taskq.h | 42 + .../openzfs/include/os/linux/zfs/sys/abd_impl_os.h | 41 + .../openzfs/include/os/linux/zfs/sys/abd_os.h | 62 + sys/contrib/openzfs/include/sys/abd.h | 37 +- sys/contrib/openzfs/include/sys/abd_impl.h | 14 +- sys/contrib/openzfs/include/sys/ddt.h | 214 ++- sys/contrib/openzfs/include/sys/ddt_impl.h | 202 +- sys/contrib/openzfs/include/sys/dmu.h | 2 + sys/contrib/openzfs/include/sys/dsl_scan.h | 2 +- sys/contrib/openzfs/include/sys/fs/zfs.h | 20 +- sys/contrib/openzfs/include/sys/spa.h | 9 +- sys/contrib/openzfs/include/sys/spa_impl.h | 1 + sys/contrib/openzfs/include/sys/zio.h | 3 + sys/contrib/openzfs/include/sys/zio_compress.h | 90 +- sys/contrib/openzfs/include/sys/zio_impl.h | 3 + sys/contrib/openzfs/include/sys/zio_priority.h | 4 + sys/contrib/openzfs/include/sys/zstd/zstd.h | 8 +- sys/contrib/openzfs/include/zfeature_common.h | 1 + sys/contrib/openzfs/include/zfs_valstr.h | 84 + sys/contrib/openzfs/lib/libzfs/Makefile.am | 1 + sys/contrib/openzfs/lib/libzfs/libzfs.abi | 135 +- sys/contrib/openzfs/lib/libzfs/libzfs_pool.c | 76 +- .../openzfs/lib/libzfs_core/libzfs_core.abi | 15 + sys/contrib/openzfs/lib/libzfs_core/libzfs_core.c | 22 + sys/contrib/openzfs/lib/libzpool/Makefile.am | 8 +- sys/contrib/openzfs/lib/libzpool/abd_os.c | 365 ++++ .../openzfs/lib/libzpool/include/Makefile.am | 4 + .../openzfs/lib/libzpool/include/sys/abd_impl_os.h | 41 + .../openzfs/lib/libzpool/include/sys/abd_os.h | 47 + sys/contrib/openzfs/man/Makefile.am | 1 + sys/contrib/openzfs/man/man4/spl.4 | 11 - sys/contrib/openzfs/man/man4/zfs.4 | 108 +- sys/contrib/openzfs/man/man7/zpool-features.7 | 17 +- sys/contrib/openzfs/man/man8/zpool-ddtprune.8 | 48 + sys/contrib/openzfs/man/man8/zpool-reguid.8 | 14 +- sys/contrib/openzfs/man/man8/zpool.8 | 1 + sys/contrib/openzfs/module/Kbuild.in | 6 +- sys/contrib/openzfs/module/Makefile.bsd | 3 + sys/contrib/openzfs/module/os/freebsd/zfs/abd_os.c | 4 +- .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 1 - .../openzfs/module/os/linux/spl/spl-generic.c | 20 +- sys/contrib/openzfs/module/os/linux/spl/spl-proc.c | 268 --- .../openzfs/module/os/linux/spl/spl-taskq.c | 414 +++- .../openzfs/module/os/linux/spl/spl-thread.c | 7 + sys/contrib/openzfs/module/os/linux/zfs/abd_os.c | 153 +- sys/contrib/openzfs/module/os/linux/zfs/arc_os.c | 6 +- .../openzfs/module/os/linux/zfs/zfs_ctldir.c | 8 +- .../openzfs/module/os/linux/zfs/zpl_super.c | 8 +- sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c | 14 +- .../openzfs/module/zcommon/zfeature_common.c | 6 + sys/contrib/openzfs/module/zcommon/zfs_valstr.c | 277 +++ sys/contrib/openzfs/module/zfs/abd.c | 24 +- sys/contrib/openzfs/module/zfs/arc.c | 95 +- sys/contrib/openzfs/module/zfs/blkptr.c | 9 +- sys/contrib/openzfs/module/zfs/dataset_kstats.c | 3 + sys/contrib/openzfs/module/zfs/ddt.c | 1981 +++++++++++++++++--- sys/contrib/openzfs/module/zfs/ddt_log.c | 778 ++++++++ sys/contrib/openzfs/module/zfs/ddt_stats.c | 129 +- sys/contrib/openzfs/module/zfs/ddt_zap.c | 30 +- sys/contrib/openzfs/module/zfs/dmu.c | 32 + sys/contrib/openzfs/module/zfs/dmu_recv.c | 7 +- sys/contrib/openzfs/module/zfs/dsl_dataset.c | 8 +- sys/contrib/openzfs/module/zfs/dsl_scan.c | 46 +- sys/contrib/openzfs/module/zfs/gzip.c | 13 +- sys/contrib/openzfs/module/zfs/lz4_zfs.c | 11 +- sys/contrib/openzfs/module/zfs/lzjb.c | 13 +- sys/contrib/openzfs/module/zfs/spa.c | 31 +- sys/contrib/openzfs/module/zfs/zfs_fm.c | 2 +- sys/contrib/openzfs/module/zfs/zfs_ioctl.c | 80 +- sys/contrib/openzfs/module/zfs/zio.c | 473 +++-- sys/contrib/openzfs/module/zfs/zio_compress.c | 92 +- sys/contrib/openzfs/module/zfs/zle.c | 13 +- sys/contrib/openzfs/module/zstd/zfs_zstd.c | 102 +- sys/contrib/openzfs/rpm/generic/zfs-kmod.spec.in | 18 + sys/contrib/openzfs/tests/runfiles/common.run | 8 +- .../openzfs/tests/zfs-tests/cmd/Makefile.am | 2 +- .../openzfs/tests/zfs-tests/include/tunables.cfg | 1 + .../openzfs/tests/zfs-tests/tests/Makefile.am | 6 + .../functional/cli_root/zpool_get/zpool_get.cfg | 1 + .../zpool_prefetch/zpool_prefetch_001_pos.ksh | 4 + .../functional/cli_root/zpool_reguid/Makefile.am | 6 + .../functional/cli_root/zpool_reguid/cleanup.ksh | 32 + .../functional/cli_root/zpool_reguid/setup.ksh | 34 + .../cli_root/zpool_reguid/zpool_reguid_001_pos.ksh | 73 + .../cli_root/zpool_reguid/zpool_reguid_002_neg.ksh | 60 + .../tests/functional/dedup/dedup_fdt_create.ksh | 106 ++ .../tests/functional/dedup/dedup_fdt_import.ksh | 119 ++ .../tests/functional/dedup/dedup_legacy_create.ksh | 95 + .../functional/dedup/dedup_legacy_fdt_mixed.ksh | 104 + .../functional/dedup/dedup_legacy_fdt_upgrade.ksh | 129 ++ .../tests/functional/dedup/dedup_legacy_import.ksh | 104 + .../tests/functional/dedup/dedup_quota.ksh | 18 +- .../zfs-tests/tests/functional/dedup/setup.ksh | 4 - sys/modules/zfs/Makefile | 3 + sys/modules/zfs/zfs_config.h | 6 +- sys/modules/zfs/zfs_gitrev.h | 2 +- usr.sbin/fstyp/Makefile | 1 + 132 files changed, 7401 insertions(+), 1510 deletions(-) diff --cc cddl/lib/libicp/Makefile index b8bd3dc6df95,000000000000..f097e7e6ff58 mode 100644,000000..100644 --- a/cddl/lib/libicp/Makefile +++ b/cddl/lib/libicp/Makefile @@@ -1,137 -1,0 +1,138 @@@ +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/icp + +PACKAGE= zfs +LIB= icp +LIBADD= + +.if ${MACHINE_ARCH} == "amd64" +ASM_SOURCES_C = asm-x86_64/aes/aeskey.c +ASM_SOURCES_AS = \ + asm-x86_64/aes/aes_amd64.S \ + asm-x86_64/aes/aes_aesni.S \ + asm-x86_64/modes/gcm_pclmulqdq.S \ + asm-x86_64/modes/aesni-gcm-x86_64.S \ + asm-x86_64/modes/ghash-x86_64.S \ + asm-x86_64/sha2/sha256-x86_64.S \ + asm-x86_64/sha2/sha512-x86_64.S \ + asm-x86_64/blake3/blake3_avx2.S \ + asm-x86_64/blake3/blake3_avx512.S \ + asm-x86_64/blake3/blake3_sse2.S \ + asm-x86_64/blake3/blake3_sse41.S + +CFLAGS+= -D__amd64 -D_SYS_STACK_H -UHAVE_AES +.elif ${MACHINE_CPUARCH} == "arm" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-arm/sha2/sha256-armv7.S \ + asm-arm/sha2/sha512-armv7.S +.elif ${MACHINE_ARCH} == "aarch64" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-aarch64/blake3/b3_aarch64_sse2.S \ + asm-aarch64/blake3/b3_aarch64_sse41.S \ + asm-aarch64/sha2/sha256-armv8.S \ + asm-aarch64/sha2/sha512-armv8.S +.elif ${MACHINE_ARCH} == "powerpc64" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-ppc64/sha2/sha256-ppc.S \ + asm-ppc64/sha2/sha512-ppc.S \ + asm-ppc64/sha2/sha256-p8.S \ + asm-ppc64/sha2/sha512-p8.S +.elif ${MACHINE_ARCH} == "powerpc64le" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-ppc64/blake3/b3_ppc64le_sse2.S \ + asm-ppc64/blake3/b3_ppc64le_sse41.S \ + asm-ppc64/sha2/sha256-ppc.S \ + asm-ppc64/sha2/sha512-ppc.S \ + asm-ppc64/sha2/sha256-p8.S \ + asm-ppc64/sha2/sha512-p8.S +.else +ASM_SOURCES_C = +ASM_SOURCES_AS = +.endif + +KERNEL_C = \ + spi/kcf_spi.c \ + api/kcf_ctxops.c \ + api/kcf_cipher.c \ + api/kcf_mac.c \ + algs/aes/aes_impl_aesni.c \ + algs/aes/aes_impl_generic.c \ + algs/aes/aes_impl_x86-64.c \ + algs/aes/aes_impl.c \ + algs/aes/aes_modes.c \ + algs/blake3/blake3.c \ + algs/blake3/blake3_generic.c \ + algs/blake3/blake3_impl.c \ + algs/edonr/edonr.c \ + algs/modes/modes.c \ + algs/modes/gcm_generic.c \ + algs/modes/gcm_pclmulqdq.c \ + algs/modes/gcm.c \ + algs/modes/ccm.c \ + algs/sha2/sha2_generic.c \ + algs/sha2/sha256_impl.c \ + algs/sha2/sha512_impl.c \ + algs/skein/skein.c \ + algs/skein/skein_block.c \ + algs/skein/skein_iv.c \ + illumos-crypto.c \ + io/aes.c \ + io/sha2_mod.c \ + core/kcf_sched.c \ + core/kcf_prov_lib.c \ + core/kcf_callprov.c \ + core/kcf_mech_tabs.c \ + core/kcf_prov_tabs.c \ + $(ASM_SOURCES_C) + +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zfs +KERNEL_C+= zfs_impl.c + +SRCS= $(ASM_SOURCES_AS) $(KERNEL_C) + +WARNS?= 2 +SHLIB_MAJOR= 3 +CSTD= c99 +CFLAGS+= -DIN_BASE +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/include +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/ +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/os/freebsd +CFLAGS+= -I${SRCTOP}/sys +CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/module/icp/include ++CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libzpool/include +CFLAGS+= -include ${SRCTOP}/sys/contrib/openzfs/include/os/freebsd/spl/sys/ccompile.h +CFLAGS+= -DHAVE_ISSETUGID +CFLAGS+= -include ${SRCTOP}/sys/modules/zfs/zfs_config.h + +CFLAGS.aes_amd64.S+= -DLOCORE +CFLAGS.aes_aesni.S+= -DLOCORE +CFLAGS.gcm_pclmulqdq.S+= -DLOCORE +CFLAGS.aesni-gcm-x86_64.S+= -DLOCORE +CFLAGS.ghash-x86_64.S+= -DLOCORE +CFLAGS.sha256-x86_64.S+= -DLOCORE +CFLAGS.sha512-x86_64.S+= -DLOCORE +CFLAGS.blake3_avx2.S = -DLOCORE +CFLAGS.blake3_avx512.S = -DLOCORE +CFLAGS.blake3_sse2.S = -DLOCORE +CFLAGS.blake3_sse41.S = -DLOCORE +CFLAGS.b3_aarch64_sse2.S = -DLOCORE +CFLAGS.b3_aarch64_sse41.S = -DLOCORE +CFLAGS.sha256-armv7.S = -DLOCORE +CFLAGS.sha256-armv8.S = -DLOCORE +CFLAGS.sha512-armv7.S = -DLOCORE +CFLAGS.sha512-armv8.S = -DLOCORE +CFLAGS.b3_ppc64le_sse2.S = -DLOCORE +CFLAGS.b3_ppc64le_sse41.S = -DLOCORE +CFLAGS.sha256-p8.S = -DLOCORE +CFLAGS.sha256-ppc.S = -DLOCORE +CFLAGS.sha512-p8.S = -DLOCORE +CFLAGS.sha512-ppc.S = -DLOCORE + + +LDFLAGS.bfd+= -Wl,-znoexecstack + +.include <bsd.lib.mk> diff --cc cddl/lib/libicp_rescue/Makefile index 3b332f736bde,000000000000..3a8b6746fe61 mode 100644,000000..100644 --- a/cddl/lib/libicp_rescue/Makefile +++ b/cddl/lib/libicp_rescue/Makefile @@@ -1,134 -1,0 +1,135 @@@ +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/icp + +PACKAGE= utilities +LIB= icp_rescue +LIBADD= + +.if ${MACHINE_ARCH} == "amd64" +ASM_SOURCES_C = asm-x86_64/aes/aeskey.c +ASM_SOURCES_AS = \ + asm-x86_64/aes/aes_amd64.S \ + asm-x86_64/aes/aes_aesni.S \ + asm-x86_64/modes/gcm_pclmulqdq.S \ + asm-x86_64/modes/aesni-gcm-x86_64.S \ + asm-x86_64/sha2/sha256-x86_64.S \ + asm-x86_64/sha2/sha512-x86_64.S \ + asm-x86_64/blake3/blake3_avx2.S \ + asm-x86_64/blake3/blake3_avx512.S \ + asm-x86_64/blake3/blake3_sse2.S \ + asm-x86_64/blake3/blake3_sse41.S + +CFLAGS+= -D__amd64 -D_SYS_STACK_H +.elif ${MACHINE_CPUARCH} == "arm" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-arm/sha2/sha256-armv7.S \ + asm-arm/sha2/sha512-armv7.S +.elif ${MACHINE_ARCH} == "aarch64" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-aarch64/blake3/b3_aarch64_sse2.S \ + asm-aarch64/blake3/b3_aarch64_sse41.S \ + asm-aarch64/sha2/sha256-armv8.S \ + asm-aarch64/sha2/sha512-armv8.S +.elif ${MACHINE_ARCH} == "powerpc64" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-ppc64/sha2/sha256-ppc.S \ + asm-ppc64/sha2/sha512-ppc.S \ + asm-ppc64/sha2/sha256-p8.S \ + asm-ppc64/sha2/sha512-p8.S +.elif ${MACHINE_ARCH} == "powerpc64le" +ASM_SOURCES_C = +ASM_SOURCES_AS = \ + asm-ppc64/blake3/b3_ppc64le_sse2.S \ + asm-ppc64/blake3/b3_ppc64le_sse41.S \ + asm-ppc64/sha2/sha256-ppc.S \ + asm-ppc64/sha2/sha512-ppc.S \ + asm-ppc64/sha2/sha256-p8.S \ + asm-ppc64/sha2/sha512-p8.S +.else +ASM_SOURCES_C = +ASM_SOURCES_AS = +.endif + +KERNEL_C = \ + spi/kcf_spi.c \ + api/kcf_ctxops.c \ + api/kcf_cipher.c \ + api/kcf_mac.c \ + algs/aes/aes_impl_aesni.c \ + algs/aes/aes_impl_generic.c \ + algs/aes/aes_impl_x86-64.c \ + algs/aes/aes_impl.c \ + algs/aes/aes_modes.c \ + algs/blake3/blake3.c \ + algs/blake3/blake3_generic.c \ + algs/blake3/blake3_impl.c \ + algs/edonr/edonr.c \ + algs/modes/modes.c \ + algs/modes/gcm_generic.c \ + algs/modes/gcm_pclmulqdq.c \ + algs/modes/gcm.c \ + algs/modes/ccm.c \ + algs/sha2/sha2_generic.c \ + algs/sha2/sha256_impl.c \ + algs/sha2/sha512_impl.c \ + algs/skein/skein_block.c \ + illumos-crypto.c \ + io/aes.c \ + io/sha2_mod.c \ + core/kcf_sched.c \ + core/kcf_prov_lib.c \ + core/kcf_callprov.c \ + core/kcf_mech_tabs.c \ + core/kcf_prov_tabs.c \ + $(ASM_SOURCES_C) + +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zfs +KERNEL_C+= zfs_impl.c + +SRCS= $(ASM_SOURCES_AS) $(KERNEL_C) + +WARNS?= 2 +SHLIB_MAJOR= 3 +CSTD= c99 +CFLAGS+= -DIN_BASE +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/include +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/ +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/os/freebsd +CFLAGS+= -I${SRCTOP}/sys +CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/module/icp/include ++CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libzpool/include +CFLAGS+= -include ${SRCTOP}/sys/contrib/openzfs/include/os/freebsd/spl/sys/ccompile.h +CFLAGS+= -DHAVE_ISSETUGID -UHAVE_AVX -DRESCUE +CFLAGS+= -include ${SRCTOP}/sys/modules/zfs/zfs_config.h + +CFLAGS.aes_amd64.S+= -DLOCORE +CFLAGS.aes_aesni.S+= -DLOCORE +CFLAGS.gcm_pclmulqdq.S+= -DLOCORE +CFLAGS.aesni-gcm-x86_64.S+= -DLOCORE +CFLAGS.ghash-x86_64.S+= -DLOCORE +CFLAGS.sha256-x86_64.S+= -DLOCORE +CFLAGS.sha512-x86_64.S+= -DLOCORE +CFLAGS.gcm.c+= -UCAN_USE_GCM_ASM +CFLAGS.blake3_avx2.S = -DLOCORE +CFLAGS.blake3_avx512.S = -DLOCORE +CFLAGS.blake3_sse2.S = -DLOCORE +CFLAGS.blake3_sse41.S = -DLOCORE +CFLAGS.b3_aarch64_sse2.S = -DLOCORE +CFLAGS.b3_aarch64_sse41.S = -DLOCORE +CFLAGS.sha256-armv7.S = -DLOCORE +CFLAGS.sha512-armv7.S = -DLOCORE +CFLAGS.sha256-armv8.S = -DLOCORE +CFLAGS.sha512-armv8.S = -DLOCORE +CFLAGS.b3_ppc64le_sse2.S = -DLOCORE +CFLAGS.b3_ppc64le_sse41.S = -DLOCORE +CFLAGS.sha256-ppc.S = -DLOCORE +CFLAGS.sha256-p8.S = -DLOCORE +CFLAGS.sha512-ppc.S = -DLOCORE +CFLAGS.sha512-p8.S = -DLOCORE + +LDFLAGS.bfd+= -Wl,-znoexecstack + +.include <bsd.lib.mk> diff --cc cddl/lib/libzfs/Makefile index 0b31fcb04b07,000000000000..bb0127a9108a mode 100644,000000..100644 --- a/cddl/lib/libzfs/Makefile +++ b/cddl/lib/libzfs/Makefile @@@ -1,107 -1,0 +1,108 @@@ +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/icp +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zcommon +.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libzfs +.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libzfs/os/freebsd +.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libshare +.PATH: ${SRCTOP}/sys/contrib/openzfs/include +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zstd +.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zstd/lib + +PACKAGE= zfs +LIB= zfs +LIBADD= \ + avl \ + bsdxml \ + crypto \ + geom \ + m \ + md \ + nvpair \ + pthread \ + rt \ + umem \ + util \ + uutil \ + z \ + zfs_core \ + zutil + +INCS= libzfs.h +USER_C = \ + libzfs_changelist.c \ + libzfs_config.c \ + libzfs_crypto.c \ + libzfs_dataset.c \ + libzfs_diff.c \ + libzfs_import.c \ + libzfs_iter.c \ + libzfs_mount.c \ + libzfs_pool.c \ + libzfs_sendrecv.c \ + libzfs_status.c \ + libzfs_util.c + +# FreeBSD +USER_C += \ + libzfs_compat.c \ + libzfs_zmount.c + +# libshare +USER_C += \ + libshare.c \ + nfs.c \ + os/freebsd/nfs.c \ + os/freebsd/smb.c + +KERNEL_C = \ + cityhash.c \ + zfeature_common.c \ + zfs_comutil.c \ + zfs_deleg.c \ + zfs_fletcher.c \ + zfs_fletcher_superscalar.c \ + zfs_fletcher_superscalar4.c \ + zfs_namecheck.c \ + zfs_prop.c \ ++ zfs_valstr.c \ + zpool_prop.c \ + zprop_common.c + - +ARCH_C = +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" +ARCH_C += zfs_fletcher_intel.c \ + zfs_fletcher_sse.c +CFLAGS += -DHAVE_SSE2 +.endif +.if ${MACHINE_ARCH} == "amd64" +ARCH_C += zfs_fletcher_avx512.c +CFLAGS+= -DHAVE_AVX2 -DHAVE_AVX -D__x86_64 -DHAVE_AVX512F +.endif +.if ${MACHINE_CPUARCH} == "aarch64" +ARCH_C += zfs_fletcher_aarch64_neon.c +.endif + +SRCS= $(USER_C) $(KERNEL_C) $(ARCH_C) + +WARNS?= 2 +SHLIB_MAJOR= 4 +CSTD= c99 +CFLAGS+= -DIN_BASE +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/include +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/include/os/freebsd +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/os/freebsd +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libshare ++CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libzpool/include +CFLAGS+= -I${SRCTOP}/sys/contrib/ck/include +CFLAGS+= -I${SRCTOP}/sys +CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include +CFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/module/icp/include +CFLAGS+= -include ${SRCTOP}/sys/contrib/openzfs/include/os/freebsd/spl/sys/ccompile.h +CFLAGS+= -DHAVE_ISSETUGID +CFLAGS+= -DHAVE_EXECVPE +CFLAGS+= -include ${SRCTOP}/sys/modules/zfs/zfs_config.h +CFLAGS+= -DSYSCONFDIR=\"/etc\" +CFLAGS+= -DPKGDATADIR=\"/usr/share/zfs\" +CFLAGS+= -DZFSEXECDIR=\"${LIBEXECDIR}/zfs\" + +.include <bsd.lib.mk> diff --cc cddl/lib/libzpool/Makefile index 95038f4e5638,000000000000..b80486484506 mode 100644,000000..100644 --- a/cddl/lib/libzpool/Makefile +++ b/cddl/lib/libzpool/Makefile @@@ -1,339 -1,0 +1,341 @@@ +ZFSTOP= ${SRCTOP}/sys/contrib/openzfs + ++.PATH: ${ZFSTOP}/lib/libzpool ++ +# ZFS_COMMON_SRCS +.PATH: ${ZFSTOP}/module/zfs +.PATH: ${ZFSTOP}/module/zcommon +.PATH: ${ZFSTOP}/module/unicode +# LUA_SRCS +.PATH: ${ZFSTOP}/module/lua +# ZSTD_SRCS +.PATH: ${ZFSTOP}/module/zstd +.PATH: ${ZFSTOP}/module/zstd/lib/common +.PATH: ${ZFSTOP}/module/zstd/lib/compress +.PATH: ${ZFSTOP}/module/zstd/lib/decompress + +.PATH: ${ZFSTOP}/module/os/linux/zfs + - .PATH: ${ZFSTOP}/lib/libzpool - +.if exists(${SRCTOP}/sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}/opensolaris_atomic.S) +.PATH: ${SRCTOP}/sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH} +ATOMIC_SRCS= opensolaris_atomic.S +ACFLAGS+= -Wa,--noexecstack +.else +.PATH: ${SRCTOP}/sys/cddl/compat/opensolaris/kern +ATOMIC_SRCS= opensolaris_atomic.c +.endif + +.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpcspe" +# Don't waste GOT entries on small data. +PICFLAG= -fPIC +.endif + +PACKAGE= zfs +LIB= zpool + +USER_C = \ ++ abd_os.c \ + kernel.c \ + taskq.c \ + util.c + +KERNEL_C = \ + zfeature_common.c \ + zfs_comutil.c \ + zfs_deleg.c \ + zfs_fletcher.c \ + zfs_fletcher_superscalar.c \ + zfs_fletcher_superscalar4.c \ + zfs_namecheck.c \ + zfs_prop.c \ + zfs_zstd.c \ + zpool_prop.c \ + zprop_common.c \ + abd.c \ - abd_os.c \ + aggsum.c \ + arc.c \ + arc_os.c \ + blake3_zfs.c \ + blkptr.c \ + bplist.c \ + bpobj.c \ + bptree.c \ + bqueue.c \ + btree.c \ + brt.c \ + cityhash.c \ + dbuf.c \ + dbuf_stats.c \ + ddt.c \ ++ ddt_log.c \ + ddt_stats.c \ + ddt_zap.c \ + dmu.c \ + dmu_diff.c \ + dmu_object.c \ + dmu_objset.c \ + dmu_recv.c \ + dmu_redact.c \ + dmu_send.c \ + dmu_traverse.c \ + dmu_tx.c \ + dmu_zfetch.c \ + dnode.c \ + dnode_sync.c \ + dsl_bookmark.c \ + dsl_dataset.c \ + dsl_deadlist.c \ + dsl_deleg.c \ + dsl_dir.c \ + dsl_crypt.c \ + dsl_pool.c \ + dsl_prop.c \ + dsl_scan.c \ + dsl_synctask.c \ + dsl_destroy.c \ + dsl_userhold.c \ + edonr_zfs.c \ + entropy_common.c \ + error_private.c \ + fm.c \ + fse_compress.c \ + fse_decompress.c \ + gzip.c \ + hist.c \ + hkdf.c \ + huf_compress.c \ + huf_decompress.c \ + lzjb.c \ + lz4.c \ + lz4_zfs.c \ + metaslab.c \ + mmp.c \ + multilist.c \ + objlist.c \ + pathname.c \ + pool.c \ + range_tree.c \ + refcount.c \ + rrwlock.c \ + sa.c \ + sha2_zfs.c \ + skein_zfs.c \ + spa.c \ + spa_checkpoint.c \ + spa_config.c \ + spa_errlog.c \ + spa_history.c \ + spa_log_spacemap.c \ + spa_misc.c \ + spa_stats.c \ + space_map.c \ + space_reftree.c \ + txg.c \ + trace.c \ + uberblock.c \ + unique.c \ + vdev.c \ + vdev_draid.c \ + vdev_draid_rand.c \ + vdev_file.c \ + vdev_indirect_births.c \ + vdev_indirect.c \ + vdev_indirect_mapping.c \ + vdev_initialize.c \ + vdev_label.c \ + vdev_label_os.c \ + vdev_mirror.c \ + vdev_missing.c \ + vdev_queue.c \ + vdev_raidz.c \ + vdev_raidz_math_aarch64_neon.c \ + vdev_raidz_math_aarch64_neonx2.c \ + vdev_raidz_math_avx2.c \ + vdev_raidz_math_avx512bw.c \ + vdev_raidz_math_avx512f.c \ + vdev_raidz_math.c \ + vdev_raidz_math_scalar.c \ + vdev_rebuild.c \ + vdev_removal.c \ + vdev_root.c \ + vdev_trim.c \ + xxhash.c \ + zap.c \ + zap_leaf.c \ + zap_micro.c \ + zcp.c \ + zcp_get.c \ + zcp_global.c \ + zcp_iter.c \ + zcp_set.c \ + zcp_synctask.c \ + zfeature.c \ + zfs_byteswap.c \ + zfs_chksum.c \ + zfs_debug.c \ + zfs_fm.c \ + zfs_fuid.c \ + zfs_sa.c \ + zfs_znode.c \ + zfs_racct.c \ + zfs_ratelimit.c \ + zfs_rlock.c \ + zil.c \ + zio.c \ + zio_checksum.c \ + zio_compress.c \ + zio_crypt.c \ + zio_inject.c \ + zle.c \ + zrlock.c \ + zstd_common.c \ + zstd_compress.c \ + zstd_compress_literals.c \ + zstd_compress_sequences.c \ + zstd_compress_superblock.c \ + zstd_ddict.c \ + zstd_decompress.c \ + zstd_decompress_block.c \ + zstd_double_fast.c \ + zstd_fast.c \ + zstd_lazy.c \ + zstd_ldm.c \ + zstd_opt.c \ + zthr.c + +ARCH_C = +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" +ARCH_C += vdev_raidz_math_sse2.c \ + vdev_raidz_math_ssse3.c \ + zfs_fletcher_intel.c \ + zfs_fletcher_sse.c +CFLAGS += -DHAVE_SSE2 -DHAVE_SSE3 +.endif +.if ${MACHINE_ARCH} == "amd64" +ARCH_C += zfs_fletcher_avx512.c +CFLAGS+= -DHAVE_AVX2 -DHAVE_AVX -D__x86_64 -DHAVE_AVX512F \ + -DHAVE_AVX512BW +.endif +.if ${MACHINE_CPUARCH} == "aarch64" +ARCH_C += zfs_fletcher_aarch64_neon.c +.endif + +LUA_C = \ + lapi.c \ + lauxlib.c \ + lbaselib.c \ + lcode.c \ + lcompat.c \ + lcorolib.c \ + lctype.c \ + ldebug.c \ + ldo.c \ + lfunc.c \ + lgc.c \ + llex.c \ + lmem.c \ + lobject.c \ + lopcodes.c \ + lparser.c \ + lstate.c \ + lstring.c \ + lstrlib.c \ + ltable.c \ + ltablib.c \ + ltm.c \ + lvm.c \ + lzio.c + +UNICODE_C = u8_textprep.c uconv.c + +SRCS= ${USER_C} ${KERNEL_C} ${LUA_C} ${UNICODE_C} ${ARCH_C} + +WARNS?= 2 +CFLAGS+= \ + -DIN_BASE \ + -I${ZFSTOP}/include \ + -I${ZFSTOP}/lib/libspl/include \ + -I${ZFSTOP}/lib/libspl/include/os/freebsd \ ++ -I${SRCTOP}/sys/contrib/openzfs/lib/libzpool/include \ + -I${SRCTOP}/sys \ + -I${ZFSTOP}/include/os/freebsd/zfs \ + -I${SRCTOP}/cddl/compat/opensolaris/include \ + -I${ZFSTOP}/module/icp/include \ + -include ${ZFSTOP}/include/os/freebsd/spl/sys/ccompile.h \ + -DHAVE_ISSETUGID \ + -include ${SRCTOP}/sys/modules/zfs/zfs_config.h \ + -I${SRCTOP}/sys/modules/zfs \ + -I${ZFSTOP}/include/os/freebsd/zfs \ + -DLIB_ZPOOL_BUILD -DZFS_DEBUG \ + +# XXX: pthread doesn't have mutex_owned() equivalent, so we need to look +# into libthr private structures. That's sooo evil, but it's only for +# ZFS debugging tools needs. +CFLAGS+= -DWANTS_MUTEX_OWNED +CFLAGS+= -I${SRCTOP}/lib/libpthread/thread +CFLAGS+= -I${SRCTOP}/lib/libpthread/sys +CFLAGS+= -I${SRCTOP}/lib/libthr/arch/${MACHINE_CPUARCH}/include +CFLAGS.gcc+= -fms-extensions + +LIBADD= md pthread z spl icp nvpair avl umem + +# atomic.S doesn't like profiling. +MK_PROFILE= no + +CSTD= c99 + +# Since there are many asserts in this library, it makes no sense to compile +# it without debugging. + +CFLAGS+= -g -DDEBUG=1 + +CFLAGS.gcc+= -Wno-pointer-to-int-cast + +# Pointer values are used as debugging "tags" to mark reference count +# ownerships and in some cases the tag reference is dropped after an +# object is freed. +CFLAGS.dbuf.c= ${NO_WUSE_AFTER_FREE} +CFLAGS.entropy_common.c= -fno-tree-vectorize +CFLAGS.entropy_common.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.error_private.c= -fno-tree-vectorize +CFLAGS.error_private.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.fse_compress.c= -fno-tree-vectorize +CFLAGS.fse_compress.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.fse_decompress.c= -fno-tree-vectorize +CFLAGS.fse_decompress.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.hist.c= -fno-tree-vectorize +CFLAGS.hist.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.huf_compress.c= -fno-tree-vectorize +CFLAGS.huf_compress.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.huf_decompress.c= -fno-tree-vectorize +CFLAGS.huf_decompress.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.pool.c= -fno-tree-vectorize +CFLAGS.pool.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.xxhash.c= -fno-tree-vectorize +CFLAGS.xxhash.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_compress.c= -fno-tree-vectorize +CFLAGS.zstd_compress.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_compress_literals.c= -fno-tree-vectorize +CFLAGS.zstd_compress_literals.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_compress_sequences.c= -fno-tree-vectorize +CFLAGS.zstd_compress_sequences.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_compress_superblock.c= -fno-tree-vectorize +CFLAGS.zstd_compress_superblock.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_double_fast.c= -fno-tree-vectorize +CFLAGS.zstd_double_fast.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_fast.c= -fno-tree-vectorize +CFLAGS.zstd_fast.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_lazy.c= -fno-tree-vectorize +CFLAGS.zstd_lazy.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_ldm.c= -fno-tree-vectorize +CFLAGS.zstd_ldm.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_opt.c= -fno-tree-vectorize +CFLAGS.zstd_opt.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_ddict.c= -fno-tree-vectorize +CFLAGS.zstd_ddict.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_decompress.c= -fno-tree-vectorize +CFLAGS.zstd_decompress.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} +CFLAGS.zstd_decompress_block.c= -fno-tree-vectorize +CFLAGS.zstd_decompress_block.c+= ${NO_WBITWISE_INSTEAD_OF_LOGICAL} + +.include <bsd.lib.mk> diff --cc cddl/sbin/zpool/Makefile index aaa2c51016ad,000000000000..ab7b852b4d9a mode 100644,000000..100644 --- a/cddl/sbin/zpool/Makefile +++ b/cddl/sbin/zpool/Makefile @@@ -1,80 -1,0 +1,82 @@@ +ZFSTOP= ${SRCTOP}/sys/contrib/openzfs + +.PATH: ${ZFSTOP}/man/man4 +.PATH: ${ZFSTOP}/man/man5 +.PATH: ${ZFSTOP}/man/man7 +.PATH: ${ZFSTOP}/man/man8 +.PATH: ${ZFSTOP}/cmd/zpool +.PATH: ${ZFSTOP}/cmd/zpool/os/freebsd + + +PACKAGE= zfs +PROG= zpool +MAN= \ + spl.4 \ + vdevprops.7 \ + zfs.4 \ + zpool.8 \ + zpool-add.8 \ + zpool-attach.8 \ + zpool-checkpoint.8 \ + zpool-clear.8 \ + zpool-create.8 \ + zpool-destroy.8 \ + zpool-detach.8 \ ++ zpool-ddtprune.8 \ + zpool-events.8 \ + zpool-export.8 \ + zpool-features.7 \ + zpool-get.8 \ + zpool-history.8 \ + zpool-import.8 \ + zpool-initialize.8 \ + zpool-iostat.8 \ + zpool-labelclear.8 \ + zpool-list.8 \ + zpool-offline.8 \ + zpool-prefetch.8 \ + zpool-reguid.8 \ + zpool-remove.8 \ + zpool-reopen.8 \ + zpool-replace.8 \ + zpool-resilver.8 \ + zpool-scrub.8 \ + zpool-split.8 \ + zpool-status.8 \ + zpool-sync.8 \ + zpool-trim.8 \ + zpool-upgrade.8 \ + zpool-wait.8 \ + zpoolconcepts.7 \ + zpoolprops.7 +MLINKS= \ + zpool-offline.8 zpool-online.8 \ + zpool-get.8 zpool-set.8 +SRCS= \ + zpool_iter.c \ + zpool_main.c \ + zpool_util.c \ + zpool_util.h \ + zpool_vdev.c \ + zpool_vdev_os.c + +WARNS?= 2 + +CFLAGS+= \ + -DIN_BASE \ + -I${ZFSTOP}/include \ + -I${ZFSTOP}/lib/libspl/include \ + -I${ZFSTOP}/lib/libspl/include/os/freebsd \ *** 9973 LINES SKIPPED ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202409091648.489GmCNu009544>