git: 4e8d558c9d1c - main - zfs: merge openzfs/zfs@feff9dfed

From: Martin Matuska <mm_at_FreeBSD.org>
Date: Sat, 10 Jun 2023 17:32:43 UTC
The branch main has been updated by mm:

URL: https://cgit.FreeBSD.org/src/commit/?id=4e8d558c9d1cf3e7e424e3fb123b01979c3d57f2

commit 4e8d558c9d1cf3e7e424e3fb123b01979c3d57f2
Merge: 5ca7f0294694 feff9dfed3df
Author:     Martin Matuska <mm@FreeBSD.org>
AuthorDate: 2023-06-10 17:31:17 +0000
Commit:     Martin Matuska <mm@FreeBSD.org>
CommitDate: 2023-06-10 17:31:17 +0000

    zfs: merge openzfs/zfs@feff9dfed
    
    Notable upstream pull request merges:
      #14833 Update compatibility.d files
      #14841 ZIL: Reduce scope of per-dataset zl_issuer_lock
      #14863 zil: Add some more statistics
      #14866 btree: Implement faster binary search algorithm
      #14894 Fix inconsistent definition of zfs_scrub_error_blocks_per_txg
      #14892 Fix concurrent resilvers initiated at same time
      #14903 Fix NULL pointer dereference when doing concurrent 'send' operations
      #14910 ZIL: Allow to replay blocks of any size
      #14939 Fix the L2ARC write size calculating logic
      #14934 Introduce zfs_refcount_(add|remove)_few()
      #14946 Improve l2arc reporting in arc_summary
      #14953 Finally drop long disabled vdev cache
      #14954 Fix the L2ARC write size calculating logic (2)
      #14955 Use list_remove_head() where possible
      #14959 ZIL: Fix race introduced by f63811f0721
    
    Obtained from:  OpenZFS
    OpenZFS commit: feff9dfed3df1bbae5dd74959a6ad87d11f27ffb

 cddl/lib/libzpool/Makefile                         |   1 -
 sys/conf/files                                     |   1 -
 sys/contrib/openzfs/META                           |   2 +-
 sys/contrib/openzfs/cmd/arc_summary                |  64 +--
 sys/contrib/openzfs/cmd/zdb/zdb.c                  | 112 ++++-
 sys/contrib/openzfs/cmd/zed/agents/zfs_agents.c    |   7 +-
 sys/contrib/openzfs/cmd/zed/agents/zfs_mod.c       |   7 +-
 sys/contrib/openzfs/cmd/zilstat.in                 | 180 +++++--
 sys/contrib/openzfs/cmd/zpool/Makefile.am          |  11 +-
 .../openzfs/cmd/zpool/compatibility.d/grub2        |   2 +
 .../openzfs/cmd/zpool/compatibility.d/openzfs-2.2  |  40 ++
 sys/contrib/openzfs/config/kernel-reclaim_state.m4 |  26 +
 sys/contrib/openzfs/config/kernel.m4               |   2 +
 sys/contrib/openzfs/contrib/debian/rules.in        |   4 +-
 sys/contrib/openzfs/contrib/initramfs/scripts/zfs  |   6 +-
 .../openzfs/contrib/pam_zfs_key/pam_zfs_key.c      | 144 ++++--
 .../openzfs/include/os/freebsd/spl/sys/kmem.h      |   3 +-
 .../include/os/linux/kernel/linux/mod_compat.h     |   1 -
 .../openzfs/include/os/linux/spl/sys/kmem.h        |  16 +-
 .../openzfs/include/os/linux/spl/sys/vmem.h        |   6 +-
 .../openzfs/include/os/linux/zfs/sys/trace_zil.h   |  34 ++
 sys/contrib/openzfs/include/sys/abd.h              |   5 +
 sys/contrib/openzfs/include/sys/btree.h            |  66 ++-
 sys/contrib/openzfs/include/sys/spa.h              |   4 -
 sys/contrib/openzfs/include/sys/vdev.h             |   6 -
 sys/contrib/openzfs/include/sys/vdev_impl.h        |  20 -
 sys/contrib/openzfs/include/sys/zfs_refcount.h     |  12 +-
 sys/contrib/openzfs/include/sys/zfs_znode.h        |   2 +-
 sys/contrib/openzfs/include/sys/zil.h              |  12 +-
 sys/contrib/openzfs/include/sys/zil_impl.h         |   7 +-
 sys/contrib/openzfs/include/sys/zio.h              |   1 -
 sys/contrib/openzfs/lib/libspl/include/umem.h      |   7 +-
 sys/contrib/openzfs/lib/libzpool/Makefile.am       |   1 -
 sys/contrib/openzfs/man/man4/zfs.4                 |  15 -
 sys/contrib/openzfs/man/man7/zpool-features.7      |   2 +
 sys/contrib/openzfs/man/man8/zdb.8                 |  25 +-
 sys/contrib/openzfs/man/man8/zfs-create.8          |  13 +-
 sys/contrib/openzfs/man/man8/zpool-events.8        |   1 -
 sys/contrib/openzfs/module/Kbuild.in               |  15 +-
 sys/contrib/openzfs/module/Makefile.bsd            |  15 +-
 .../openzfs/module/os/freebsd/zfs/sysctl_os.c      |   2 -
 .../openzfs/module/os/freebsd/zfs/zfs_acl.c        |   4 +-
 .../openzfs/module/os/freebsd/zfs/zfs_vfsops.c     |  86 ----
 .../openzfs/module/os/freebsd/zfs/zfs_znode.c      |  87 ++++
 .../openzfs/module/os/linux/spl/spl-kmem-cache.c   |  17 +-
 sys/contrib/openzfs/module/os/linux/zfs/arc_os.c   |   4 +
 sys/contrib/openzfs/module/os/linux/zfs/zfs_acl.c  |   4 +-
 .../openzfs/module/os/linux/zfs/zfs_vfsops.c       |  85 ----
 .../openzfs/module/os/linux/zfs/zfs_znode.c        |  85 ++++
 sys/contrib/openzfs/module/zfs/arc.c               |  86 ++--
 sys/contrib/openzfs/module/zfs/bplist.c            |   8 +-
 sys/contrib/openzfs/module/zfs/btree.c             |  22 +-
 sys/contrib/openzfs/module/zfs/dataset_kstats.c    |   6 +-
 sys/contrib/openzfs/module/zfs/dmu_objset.c        |   3 +-
 sys/contrib/openzfs/module/zfs/dmu_recv.c          |   4 +-
 sys/contrib/openzfs/module/zfs/dmu_send.c          |  11 +-
 sys/contrib/openzfs/module/zfs/dmu_tx.c            |   3 +-
 sys/contrib/openzfs/module/zfs/dmu_zfetch.c        |   3 +-
 sys/contrib/openzfs/module/zfs/dsl_dataset.c       |   3 +-
 sys/contrib/openzfs/module/zfs/dsl_dir.c           |   3 +-
 sys/contrib/openzfs/module/zfs/dsl_scan.c          |  13 +-
 sys/contrib/openzfs/module/zfs/fm.c                |   3 +-
 sys/contrib/openzfs/module/zfs/metaslab.c          |  29 +-
 sys/contrib/openzfs/module/zfs/range_tree.c        |  18 +-
 sys/contrib/openzfs/module/zfs/refcount.c          |  25 +-
 sys/contrib/openzfs/module/zfs/spa.c               |  11 +-
 sys/contrib/openzfs/module/zfs/spa_misc.c          |   5 +-
 sys/contrib/openzfs/module/zfs/vdev.c              |  20 +-
 sys/contrib/openzfs/module/zfs/vdev_cache.c        | 436 -----------------
 sys/contrib/openzfs/module/zfs/vdev_indirect.c     |  11 +-
 sys/contrib/openzfs/module/zfs/vdev_queue.c        |   5 +-
 sys/contrib/openzfs/module/zfs/zap_micro.c         |   6 +-
 sys/contrib/openzfs/module/zfs/zfs_fm.c            |   3 +-
 sys/contrib/openzfs/module/zfs/zfs_fuid.c          |   8 +-
 sys/contrib/openzfs/module/zfs/zfs_onexit.c        |   3 +-
 sys/contrib/openzfs/module/zfs/zil.c               | 522 ++++++++++++++-------
 sys/contrib/openzfs/module/zfs/zio.c               |  15 +-
 sys/contrib/openzfs/module/zfs/zvol.c              |   7 +-
 sys/contrib/openzfs/tests/runfiles/common.run      |   5 +-
 sys/contrib/openzfs/tests/runfiles/freebsd.run     |   5 +
 sys/contrib/openzfs/tests/runfiles/linux.run       |   3 +-
 .../openzfs/tests/test-runner/bin/zts-report.py.in |   5 +
 .../openzfs/tests/zfs-tests/cmd/btree_test.c       |   2 +-
 .../openzfs/tests/zfs-tests/tests/Makefile.am      |   2 +
 .../tests/functional/cli_root/zdb/zdb_backup.ksh   |  55 +++
 .../zpool_resilver/zpool_resilver_concurrent.ksh   | 101 ++++
 .../functional/cli_user/misc/zilstat_001_pos.ksh   |   2 +-
 .../zfs-tests/tests/functional/pam/cleanup.ksh     |   1 +
 .../tests/functional/pam/pam_change_unmounted.ksh  |  55 +++
 .../tests/functional/pam/pam_recursive.ksh         |  72 +++
 .../tests/functional/pam/pam_short_password.ksh    |   2 +-
 .../pool_checkpoint/checkpoint_discard_busy.ksh    |   2 +
 .../functional/zvol/zvol_misc/zvol_misc_fua.ksh    |   9 +
 .../functional/zvol/zvol_misc/zvol_misc_trim.ksh   |  10 +-
 sys/modules/zfs/Makefile                           |   1 -
 sys/modules/zfs/zfs_config.h                       |   9 +-
 sys/modules/zfs/zfs_gitrev.h                       |   2 +-
 97 files changed, 1690 insertions(+), 1217 deletions(-)

diff --cc cddl/lib/libzpool/Makefile
index 5dbeb9cb1721,000000000000..217159611e97
mode 100644,000000..100644
--- a/cddl/lib/libzpool/Makefile
+++ b/cddl/lib/libzpool/Makefile
@@@ -1,338 -1,0 +1,337 @@@
 +# $FreeBSD$
 +
 +ZFSTOP=	${SRCTOP}/sys/contrib/openzfs
 +
 +# 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 = \
 +	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_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_cache.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_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 \
 +	-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
 +
 +# 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 sys/conf/files
index a5f55b49451c,000000000000..726c4c7c8b2c
mode 100644,000000..100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@@ -1,5232 -1,0 +1,5231 @@@
 +# $FreeBSD$
 +#
 +# The long compile-with and dependency lines are required because of
 +# limitations in config: backslash-newline doesn't work in strings, and
 +# dependency lines other than the first are silently ignored.
 +#
 +acpi_quirks.h			optional acpi				   \
 +	dependency	"$S/tools/acpi_quirks2h.awk $S/dev/acpica/acpi_quirks" \
 +	compile-with	"${AWK} -f $S/tools/acpi_quirks2h.awk $S/dev/acpica/acpi_quirks" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"acpi_quirks.h"
 +bhnd_nvram_map.h		optional bhnd				   \
 +	dependency	"$S/dev/bhnd/tools/nvram_map_gen.sh $S/dev/bhnd/tools/nvram_map_gen.awk $S/dev/bhnd/nvram/nvram_map" \
 +	compile-with	"sh $S/dev/bhnd/tools/nvram_map_gen.sh $S/dev/bhnd/nvram/nvram_map -h" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"bhnd_nvram_map.h"
 +bhnd_nvram_map_data.h		optional bhnd				   \
 +	dependency	"$S/dev/bhnd/tools/nvram_map_gen.sh $S/dev/bhnd/tools/nvram_map_gen.awk $S/dev/bhnd/nvram/nvram_map" \
 +	compile-with	"sh $S/dev/bhnd/tools/nvram_map_gen.sh $S/dev/bhnd/nvram/nvram_map -d" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"bhnd_nvram_map_data.h"
 +fdt_static_dtb.h		optional fdt fdt_dtb_static \
 +	compile-with "sh -c 'MACHINE=${MACHINE} $S/tools/fdt/make_dtbh.sh ${FDT_DTS_FILE} ${.CURDIR}'" \
 +	dependency	"${FDT_DTS_FILE:T:R}.dtb" \
 +	no-obj no-implicit-rule before-depend \
 +	clean		"fdt_static_dtb.h"
 +feeder_eq_gen.h			optional sound				   \
 +	dependency	"$S/tools/sound/feeder_eq_mkfilter.awk"		   \
 +	compile-with	"${AWK} -f $S/tools/sound/feeder_eq_mkfilter.awk -- ${FEEDER_EQ_PRESETS} > feeder_eq_gen.h" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"feeder_eq_gen.h"
 +feeder_rate_gen.h		optional sound				   \
 +	dependency	"$S/tools/sound/feeder_rate_mkfilter.awk"	   \
 +	compile-with	"${AWK} -f $S/tools/sound/feeder_rate_mkfilter.awk -- ${FEEDER_RATE_PRESETS} > feeder_rate_gen.h" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"feeder_rate_gen.h"
 +font.h				optional	sc_dflt_font		\
 +	compile-with	"uudecode < ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h"									\
 +	no-obj no-implicit-rule before-depend				\
 +	clean		"font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 ${SC_DFLT_FONT}-8x8"
 +snd_fxdiv_gen.h			optional sound				   \
 +	dependency	"$S/tools/sound/snd_fxdiv_gen.awk"		   \
 +	compile-with	"${AWK} -f $S/tools/sound/snd_fxdiv_gen.awk -- > snd_fxdiv_gen.h" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"snd_fxdiv_gen.h"
 +miidevs.h			optional miibus | mii			   \
 +	dependency	"$S/tools/miidevs2h.awk $S/dev/mii/miidevs"	   \
 +	compile-with	"${AWK} -f $S/tools/miidevs2h.awk $S/dev/mii/miidevs" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"miidevs.h"
 +kbdmuxmap.h			optional	kbdmux_dflt_keymap 	   \
 +	compile-with	"${KEYMAP} -L ${KBDMUX_DFLT_KEYMAP} | ${KEYMAP_FIX} > ${.TARGET}" \
 +	no-obj no-implicit-rule before-depend				\
 +	clean		"kbdmuxmap.h"
 +teken_state.h		optional sc | vt				   \
 +	dependency	"$S/teken/gensequences $S/teken/sequences" \
 +	compile-with	"${AWK} -f $S/teken/gensequences $S/teken/sequences > teken_state.h" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"teken_state.h"
 +ukbdmap.h			optional	ukbd_dflt_keymap	\
 +	compile-with	"${KEYMAP} -L ${UKBD_DFLT_KEYMAP} | ${KEYMAP_FIX} > ${.TARGET}" \
 +	no-obj no-implicit-rule before-depend				\
 +	clean		"ukbdmap.h"
 +usbdevs.h			optional usb | hid			   \
 +	dependency	"$S/tools/usbdevs2h.awk $S/dev/usb/usbdevs" \
 +	compile-with	"${AWK} -f $S/tools/usbdevs2h.awk $S/dev/usb/usbdevs -h" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"usbdevs.h"
 +usbdevs_data.h			optional usb				   \
 +	dependency	"$S/tools/usbdevs2h.awk $S/dev/usb/usbdevs" \
 +	compile-with	"${AWK} -f $S/tools/usbdevs2h.awk $S/dev/usb/usbdevs -d" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"usbdevs_data.h"
 +sdiodevs.h			optional mmccam				   \
 +	dependency	"$S/tools/sdiodevs2h.awk $S/dev/sdio/sdiodevs" \
 +	compile-with	"${AWK} -f $S/tools/sdiodevs2h.awk $S/dev/sdio/sdiodevs -h" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"sdiodevs.h"
 +sdiodevs_data.h			optional mmccam				   \
 +	dependency	"$S/tools/sdiodevs2h.awk $S/dev/sdio/sdiodevs" \
 +	compile-with	"${AWK} -f $S/tools/sdiodevs2h.awk $S/dev/sdio/sdiodevs -d" \
 +	no-obj no-implicit-rule before-depend				   \
 +	clean		"sdiodevs_data.h"
 +cam/cam.c			optional scbus
 +cam/cam_compat.c		optional scbus
 +cam/cam_iosched.c		optional scbus
 +cam/cam_periph.c		optional scbus
 +cam/cam_queue.c			optional scbus
 +cam/cam_sim.c			optional scbus
 +cam/cam_xpt.c			optional scbus
 +cam/ata/ata_all.c		optional scbus
 +cam/ata/ata_xpt.c		optional scbus
 +cam/ata/ata_pmp.c		optional scbus
 +cam/nvme/nvme_all.c		optional scbus
 +cam/nvme/nvme_da.c		optional nda | da
 +cam/nvme/nvme_xpt.c		optional scbus
 +cam/scsi/scsi_xpt.c		optional scbus
 +cam/scsi/scsi_all.c		optional scbus
 +cam/scsi/scsi_cd.c		optional cd
 +cam/scsi/scsi_ch.c		optional ch
 +cam/ata/ata_da.c		optional ada | da
 +cam/ctl/ctl.c			optional ctl
 +cam/ctl/ctl_backend.c		optional ctl
 +cam/ctl/ctl_backend_block.c	optional ctl
 +cam/ctl/ctl_backend_ramdisk.c	optional ctl
 +cam/ctl/ctl_cmd_table.c		optional ctl
 +cam/ctl/ctl_frontend.c		optional ctl
 +cam/ctl/ctl_frontend_cam_sim.c	optional ctl
 +cam/ctl/ctl_frontend_ioctl.c	optional ctl
 +cam/ctl/ctl_frontend_iscsi.c	optional ctl cfiscsi
 +cam/ctl/ctl_ha.c		optional ctl
 +cam/ctl/ctl_scsi_all.c		optional ctl
 +cam/ctl/ctl_tpc.c		optional ctl
 +cam/ctl/ctl_tpc_local.c		optional ctl
 +cam/ctl/ctl_error.c		optional ctl
 +cam/ctl/ctl_util.c		optional ctl
 +cam/ctl/scsi_ctl.c		optional ctl
 +cam/mmc/mmc_xpt.c		optional scbus mmccam
 +cam/mmc/mmc_sim.c		optional scbus mmccam
 +cam/mmc/mmc_sim_if.m		optional scbus mmccam
 +cam/mmc/mmc_da.c		optional scbus mmccam da
 +cam/scsi/scsi_da.c		optional da
 +cam/scsi/scsi_pass.c		optional pass
 +cam/scsi/scsi_pt.c		optional pt
 +cam/scsi/scsi_sa.c		optional sa
 +cam/scsi/scsi_enc.c		optional ses
 +cam/scsi/scsi_enc_ses.c		optional ses
 +cam/scsi/scsi_enc_safte.c	optional ses
 +cam/scsi/scsi_sg.c		optional sg
 +cam/scsi/scsi_targ_bh.c		optional targbh
 +cam/scsi/scsi_target.c		optional targ
 +cam/scsi/smp_all.c		optional scbus
 +
 +# shared between zfs and dtrace
 +cddl/compat/opensolaris/kern/opensolaris.c		optional dtrace compile-with "${CDDL_C}"
 +cddl/compat/opensolaris/kern/opensolaris_proc.c		optional zfs | dtrace compile-with "${CDDL_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_misc.c		optional zfs | dtrace compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_cmn_err.c		optional zfs | dtrace compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_taskq.c		optional zfs | dtrace compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_kmem.c		optional zfs | dtrace compile-with "${ZFS_C}"
 +
 +#zfs solaris portability layer
 +contrib/openzfs/module/os/freebsd/spl/acl_common.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/callb.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/list.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_acl.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_dtrace.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_kstat.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_policy.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_procfs_list.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_string.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_sunddi.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_sysevent.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_uio.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_vfs.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_vm.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_zlib.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/spl/spl_zone.c		optional zfs compile-with "${ZFS_C}"
 +
 +
 +
 +# zfs specific
 +
 +#zfs avl
 +contrib/openzfs/module/avl/avl.c				optional zfs compile-with "${ZFS_C}"
 +
 +# zfs lua support
 +contrib/openzfs/module/lua/lapi.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lauxlib.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lbaselib.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lcode.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lcompat.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lcorolib.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lctype.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/ldebug.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/ldo.c			optional zfs compile-with "${ZFS_C} ${NO_WINFINITE_RECURSION}"
 +contrib/openzfs/module/lua/lfunc.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lgc.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/llex.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lmem.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lobject.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lopcodes.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lparser.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lstate.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lstring.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lstrlib.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/ltable.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/ltablib.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/ltm.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lvm.c			optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/lua/lzio.c			optional zfs compile-with "${ZFS_C}"
 +
 +# zfs nvpair support
 +contrib/openzfs/module/nvpair/fnvpair.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/nvpair/nvpair.c		optional zfs compile-with "${ZFS_RPC_C} ${NO_WSTRINGOP_OVERREAD}"
 +contrib/openzfs/module/nvpair/nvpair_alloc_fixed.c	optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/nvpair/nvpair_alloc_spl.c	optional zfs compile-with "${ZFS_C}"
 +
 +#zfs platform compatibility code
 +contrib/openzfs/module/os/freebsd/zfs/abd_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/arc_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/crypto_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/dmu_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/event_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/hkdf.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/kmod_core.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/spa_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c		optional zfs compile-with "${ZFS_C}  -include $S/modules/zfs/zfs_config.h"
 +contrib/openzfs/module/os/freebsd/zfs/vdev_file.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/vdev_label_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/vdev_geom.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_acl.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_debug.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_dir.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_file_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_ioctl_compat.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_ioctl_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_racct.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zfs_znode.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zio_crypt.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/os/freebsd/zfs/zvol_os.c		optional zfs compile-with "${ZFS_C}"
 +
 +#zfs unicode support
 +contrib/openzfs/module/unicode/uconv.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/unicode/u8_textprep.c		optional zfs compile-with "${ZFS_C}"
 +
 +#zfs checksums / zcommon
 +contrib/openzfs/module/zcommon/cityhash.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfeature_common.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfs_comutil.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfs_deleg.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfs_fletcher.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfs_fletcher_superscalar.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfs_fletcher_superscalar4.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfs_namecheck.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zfs_prop.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zpool_prop.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zcommon/zprop_common.c		optional zfs compile-with "${ZFS_C}"
 +
 +# zfs edon-r hash support
 +contrib/openzfs/module/icp/algs/edonr/edonr.c		optional zfs compile-with "${ZFS_C}"
 +
 +# zfs blake3 hash support
 +contrib/openzfs/module/icp/algs/blake3/blake3.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/icp/algs/blake3/blake3_generic.c	optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/icp/algs/blake3/blake3_impl.c	optional zfs compile-with "${ZFS_C}"
 +
 +# zfs sha2 hash support
 +contrib/openzfs/module/icp/algs/sha2/sha2_generic.c	optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/icp/algs/sha2/sha256_impl.c	optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/icp/algs/sha2/sha512_impl.c	optional zfs compile-with "${ZFS_C}"
 +
 +#zfs core common code
 +contrib/openzfs/module/zfs/abd.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/aggsum.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/arc.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/blake3_zfs.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/blkptr.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/bplist.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/bpobj.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/bptree.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/brt.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/btree.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/bqueue.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dbuf.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dbuf_stats.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dataset_kstats.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/ddt.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/ddt_zap.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_diff.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_object.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_objset.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_recv.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_redact.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_send.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_traverse.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_tx.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dmu_zfetch.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dnode.c		optional zfs compile-with "${ZFS_C} ${NO_WUNUSED_BUT_SET_VARIABLE}" \
 +	warning "kernel contains CDDL licensed ZFS filesystem"
 +contrib/openzfs/module/zfs/dnode_sync.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_bookmark.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_crypt.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_dataset.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_deadlist.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_deleg.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_destroy.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_dir.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_pool.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_prop.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_scan.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_synctask.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/dsl_userhold.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/edonr_zfs.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/fm.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/gzip.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/lzjb.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/lz4.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/lz4_zfs.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/metaslab.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/mmp.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/multilist.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/objlist.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/pathname.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/range_tree.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/refcount.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/rrwlock.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/sa.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/sha2_zfs.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/skein_zfs.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa_checkpoint.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa_config.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa_errlog.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa_history.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa_log_spacemap.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa_misc.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/spa_stats.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/space_map.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/space_reftree.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/txg.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/uberblock.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/unique.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev.c		optional zfs compile-with "${ZFS_C}"
- contrib/openzfs/module/zfs/vdev_cache.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_draid.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_draid_rand.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_indirect.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_indirect_births.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_indirect_mapping.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_initialize.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_label.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_mirror.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_missing.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_queue.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_raidz.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_raidz_math.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_raidz_math_scalar.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_rebuild.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_removal.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_root.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/vdev_trim.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zap.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zap_leaf.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zap_micro.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zcp.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zcp_get.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zcp_global.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zcp_iter.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zcp_set.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zcp_synctask.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfeature.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_byteswap.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_chksum.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_fm.c		optional zfs compile-with "${ZFS_C} ${NO_WUNUSED_BUT_SET_VARIABLE}"
 +contrib/openzfs/module/zfs/zfs_fuid.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_impl.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_ioctl.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_log.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_onexit.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_quota.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_ratelimit.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_replay.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_rlock.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_sa.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zfs_vnops.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zstd/zfs_zstd.c		optional zfs zstdio compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zil.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zio.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zio_checksum.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zio_compress.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zio_inject.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zle.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zrlock.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zthr.c		optional zfs compile-with "${ZFS_C}"
 +contrib/openzfs/module/zfs/zvol.c		optional zfs compile-with "${ZFS_C}"
 +
 +# dtrace specific
 +cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c	optional dtrace compile-with "${DTRACE_C}" \
 +							warning "kernel contains CDDL licensed DTRACE"
 +cddl/contrib/opensolaris/uts/common/dtrace/dtrace_xoroshiro128_plus.c	optional dtrace compile-with "${DTRACE_C}"
 +cddl/dev/dtmalloc/dtmalloc.c		optional dtmalloc        | dtraceall compile-with "${CDDL_C}"
 +cddl/dev/profile/profile.c		optional dtrace_profile  | dtraceall compile-with "${CDDL_C}"
 +cddl/dev/sdt/sdt.c			optional dtrace_sdt      | dtraceall compile-with "${CDDL_C}"
 +cddl/dev/fbt/fbt.c			optional dtrace_fbt      | dtraceall compile-with "${FBT_C}"
 +cddl/dev/systrace/systrace.c		optional dtrace_systrace | dtraceall compile-with "${CDDL_C}"
 +cddl/dev/prototype.c			optional dtrace_prototype | dtraceall compile-with "${CDDL_C}"
 +fs/nfsclient/nfs_clkdtrace.c		optional dtnfscl nfscl   | dtraceall nfscl compile-with "${CDDL_C}"
 +compat/freebsd32/freebsd32_abort2.c	optional compat_freebsd32
 +compat/freebsd32/freebsd32_capability.c	optional compat_freebsd32
 +compat/freebsd32/freebsd32_ioctl.c	optional compat_freebsd32
 +compat/freebsd32/freebsd32_misc.c	optional compat_freebsd32
 +compat/freebsd32/freebsd32_syscalls.c	optional compat_freebsd32
 +compat/freebsd32/freebsd32_sysent.c	optional compat_freebsd32
 +contrib/ck/src/ck_array.c				standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_barrier_centralized.c			standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_barrier_combining.c			standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_barrier_dissemination.c		standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_barrier_mcs.c				standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_barrier_tournament.c			standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_epoch.c				standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_hp.c					standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_hs.c					standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_ht.c					standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/ck/src/ck_rhs.c					standard compile-with "${NORMAL_C} -I$S/contrib/ck/include"
 +contrib/dev/acpica/common/ahids.c			optional acpi acpi_debug
 +contrib/dev/acpica/common/ahuuids.c			optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbcmds.c		optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbconvert.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbdisply.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbexec.c		optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbhistry.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbinput.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbmethod.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbnames.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbobject.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbstats.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbtest.c		optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbutils.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/debugger/dbxface.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmbuffer.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmcstyle.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmdeferred.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmnames.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmopcode.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmresrc.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmresrcl.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmresrcl2.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmresrcs.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmutils.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/disassembler/dmwalk.c	optional acpi acpi_debug
 +contrib/dev/acpica/components/dispatcher/dsargs.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dscontrol.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsdebug.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsfield.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsinit.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsmethod.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsmthdat.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsobject.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsopcode.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dspkginit.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dsutils.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dswexec.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dswload.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dswload2.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dswscope.c	optional acpi
 +contrib/dev/acpica/components/dispatcher/dswstate.c	optional acpi
 +contrib/dev/acpica/components/events/evevent.c		optional acpi
 +contrib/dev/acpica/components/events/evglock.c		optional acpi
 +contrib/dev/acpica/components/events/evgpe.c		optional acpi
 +contrib/dev/acpica/components/events/evgpeblk.c		optional acpi
 +contrib/dev/acpica/components/events/evgpeinit.c	optional acpi
 +contrib/dev/acpica/components/events/evgpeutil.c	optional acpi
 +contrib/dev/acpica/components/events/evhandler.c	optional acpi
 +contrib/dev/acpica/components/events/evmisc.c		optional acpi
 +contrib/dev/acpica/components/events/evregion.c		optional acpi
 +contrib/dev/acpica/components/events/evrgnini.c		optional acpi
 +contrib/dev/acpica/components/events/evsci.c		optional acpi
 +contrib/dev/acpica/components/events/evxface.c		optional acpi
 +contrib/dev/acpica/components/events/evxfevnt.c		optional acpi
 +contrib/dev/acpica/components/events/evxfgpe.c		optional acpi
 +contrib/dev/acpica/components/events/evxfregn.c		optional acpi
 +contrib/dev/acpica/components/executer/exconcat.c	optional acpi
 +contrib/dev/acpica/components/executer/exconfig.c	optional acpi
 +contrib/dev/acpica/components/executer/exconvrt.c	optional acpi
 +contrib/dev/acpica/components/executer/excreate.c	optional acpi
 +contrib/dev/acpica/components/executer/exdebug.c	optional acpi
 +contrib/dev/acpica/components/executer/exdump.c		optional acpi
 +contrib/dev/acpica/components/executer/exfield.c	optional acpi
 +contrib/dev/acpica/components/executer/exfldio.c	optional acpi
 +contrib/dev/acpica/components/executer/exmisc.c		optional acpi
 +contrib/dev/acpica/components/executer/exmutex.c	optional acpi
 +contrib/dev/acpica/components/executer/exnames.c	optional acpi
 +contrib/dev/acpica/components/executer/exoparg1.c	optional acpi
 +contrib/dev/acpica/components/executer/exoparg2.c	optional acpi
 +contrib/dev/acpica/components/executer/exoparg3.c	optional acpi
 +contrib/dev/acpica/components/executer/exoparg6.c	optional acpi
 +contrib/dev/acpica/components/executer/exprep.c		optional acpi
 +contrib/dev/acpica/components/executer/exregion.c	optional acpi
 +contrib/dev/acpica/components/executer/exresnte.c	optional acpi
 +contrib/dev/acpica/components/executer/exresolv.c	optional acpi
 +contrib/dev/acpica/components/executer/exresop.c	optional acpi
 +contrib/dev/acpica/components/executer/exserial.c	optional acpi
 +contrib/dev/acpica/components/executer/exstore.c	optional acpi
 +contrib/dev/acpica/components/executer/exstoren.c	optional acpi
 +contrib/dev/acpica/components/executer/exstorob.c	optional acpi
 +contrib/dev/acpica/components/executer/exsystem.c	optional acpi
 +contrib/dev/acpica/components/executer/extrace.c	optional acpi
 +contrib/dev/acpica/components/executer/exutils.c	optional acpi
 +contrib/dev/acpica/components/hardware/hwacpi.c		optional acpi
 +contrib/dev/acpica/components/hardware/hwesleep.c	optional acpi
 +contrib/dev/acpica/components/hardware/hwgpe.c		optional acpi
 +contrib/dev/acpica/components/hardware/hwpci.c		optional acpi
 +contrib/dev/acpica/components/hardware/hwregs.c		optional acpi
 +contrib/dev/acpica/components/hardware/hwsleep.c	optional acpi
 +contrib/dev/acpica/components/hardware/hwtimer.c	optional acpi
 +contrib/dev/acpica/components/hardware/hwvalid.c	optional acpi
 +contrib/dev/acpica/components/hardware/hwxface.c	optional acpi
 +contrib/dev/acpica/components/hardware/hwxfsleep.c	optional acpi
 +contrib/dev/acpica/components/namespace/nsaccess.c	optional acpi \
 +	compile-with "${NORMAL_C} ${NO_WUNUSED_BUT_SET_VARIABLE}"
*** 6399 LINES SKIPPED ***