The branch main has been updated by mm:

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

commit df58e8b1506f241670be86a560fb6e8432043aee
Merge: 02f394281fd6 8302b6e32bb1
Author:     Martin Matuska <m...@freebsd.org>
AuthorDate: 2025-08-07 07:06:31 +0000
Commit:     Martin Matuska <m...@freebsd.org>
CommitDate: 2025-08-07 07:06:31 +0000

    zfs: merge openzfs/zfs@8302b6e32
    
    Notable upstream pull request merges:
     #16853 894edd084 Add TXG timestamp database
     #17004 -multiple Implement dynamic gang header sizes
     #17405 dea0fc969 ZVOL: Return early, if volmode is ZFS_VOLMODE_NONE
                      on FreeBSD side
     #17455 cf146460c Default to zfs_bclone_wait_dirty=1
     #17481 523d9d600 Validate mountpoint on path-based unmount using statx
     #17482 92da9e0e9 ZVOL: Implement zvol_alloc() function on FreeBSD side
     #17489 dee62e074 spa: ZIO_TASKQ_ISSUE: Use symbolic priority
     #17496 bf846dcb7 Release topology restrictions on special/dedup
     #17497 4e92aee23 Relax special_small_blocks restrictions
     #17503 ea38787f2 Revert "Fix incorrect expected error in ztest"
     #17505 be1e991a1 Allow and prefer special vdevs as ZIL
     #17506 ee0cb4cb8 ztest: Fix false positive of ENOSPC handling
     #17507 92d3b4ee2 zio: rename `io_reexecute` as `io_post`;
                      use it for the direct IO checksum error flag
     #17508 6af8db61b metaslab: don't pass whole zio to throttle reserve APIs
     #17518 4c2a7f85d FreeBSD: Add support for _PC_HAS_HIDDENSYSTEM
     #17521 d7ab07dfb ZIL: Force writing of open LWB on suspend
     #17524 b6e8db509 zpool/zfs: Add '-a|--all' option to scrub, trim,
                      initialize
     #17531 c1e51c55f Correct weight recalculation of space-based metaslabs
     #17533 d323fbf49 FreeBSD: zfs_putpages: don't undirty pages until
                      after write completes
     #17536 b21e04e8d Fix zdb pool/ with -k
     #17537 -multiple Userspace tunables
     #17540 2957eabbe Add support for FreeBSD's Solaris style extended
                      attribute interface
     #17547 4bd7a2eaa zdb: fix checksum calculation for decompressed blocks
     #17551 -multiple cleanup: remove var init/update
     #17561 0f8a1105e Skip dbuf_evict_one() from dbuf_evict_notify()
                      for reclaim thread
     #17563 10a78e264 Faster checksum benchmark on system boot
     #17564 00ce064d8 spa: update blkptr diagram to include vdev padding
                      on encrypted blocks
     #17565 -multiple Physical rewrite
     #17566 fc885f308 Don't use wrong weight when passivating group
     #17572 f70c85086 BRT: Fix ZAP entry endianness
     #17575 0b6fd024a ZVOL: Unify zvol minors operations and improve error
                      handling
     #17581 cb5e7e097 range_tree: Provide more debug details upon unexpected
                      add/remove
     #17587 -multiple Fix two issues with dynamic gang headers
    
    Obtained from:  OpenZFS
    OpenZFS commit: 8302b6e32bb153a6f402b106484d5736f082abcc

 cddl/lib/libspl/Makefile                           |   1 +
 cddl/lib/libzpool/Makefile                         |   2 +
 stand/libsa/zfs/spl/sys/zfs_context.h              |   2 +-
 sys/conf/files                                     |   1 +
 sys/contrib/openzfs/.cirrus.yml                    |  21 --
 sys/contrib/openzfs/.github/codeql-cpp.yml         |   1 +
 .../cpp/dslDatasetHoldReleMismatch.ql              |  34 ++
 .../.github/workflows/scripts/qemu-2-start.sh      |   8 -
 .../.github/workflows/scripts/qemu-3-deps-vm.sh    |   3 +-
 .../.github/workflows/scripts/qemu-6-tests.sh      |   6 +-
 sys/contrib/openzfs/.github/workflows/zfs-qemu.yml |  22 +-
 sys/contrib/openzfs/.github/workflows/zloop.yml    |  24 +-
 sys/contrib/openzfs/cmd/arc_summary                |   3 +
 sys/contrib/openzfs/cmd/zdb/zdb.c                  | 103 ++++--
 sys/contrib/openzfs/cmd/zdb/zdb_il.c               |   8 +-
 sys/contrib/openzfs/cmd/zed/agents/zfs_agents.c    |  67 ++--
 sys/contrib/openzfs/cmd/zed/zed_event.c            |   2 +-
 sys/contrib/openzfs/cmd/zfs/zfs_main.c             |  36 +-
 sys/contrib/openzfs/cmd/zpool/zpool_iter.c         |   5 +-
 sys/contrib/openzfs/cmd/zpool/zpool_main.c         | 264 +++++++++-----
 sys/contrib/openzfs/cmd/zpool/zpool_vdev.c         |  24 +-
 sys/contrib/openzfs/cmd/ztest.c                    |  51 +--
 sys/contrib/openzfs/config/ax_python_devel.m4      |   4 +-
 sys/contrib/openzfs/config/kernel-free-inode.m4    |  24 ++
 sys/contrib/openzfs/config/kernel.m4               |   2 +
 sys/contrib/openzfs/config/user-statx.m4           |  34 ++
 sys/contrib/openzfs/config/user.m4                 |   1 +
 .../contrib/debian/openzfs-zfsutils.install        |   1 +
 sys/contrib/openzfs/etc/Makefile.am                |   1 +
 .../etc/systemd/system/zfs-mo...@.service.in       |  26 ++
 sys/contrib/openzfs/include/Makefile.am            |   2 +-
 sys/contrib/openzfs/include/libzfs.h               |  15 +
 sys/contrib/openzfs/include/os/freebsd/Makefile.am |   2 +-
 .../openzfs/include/os/freebsd/spl/sys/misc.h      |   5 +
 .../include/os/freebsd/spl/sys/{mod_os.h => mod.h} |   0
 .../openzfs/include/os/freebsd/spl/sys/vm.h        |   1 +
 .../include/os/freebsd/spl/sys/vnode_impl.h        |   1 +
 sys/contrib/openzfs/include/os/linux/Makefile.am   |   2 +-
 .../openzfs/include/os/linux/spl/sys/atomic.h      |  32 ++
 .../openzfs/include/os/linux/spl/sys/kmem.h        |  61 +---
 .../openzfs/include/os/linux/spl/sys/misc.h        |   6 +
 .../include/os/linux/spl/sys/{mod_os.h => mod.h}   |   0
 .../openzfs/include/os/linux/zfs/sys/trace_acl.h   |   7 +-
 .../include/os/linux/zfs/sys/trace_common.h        |   8 +-
 .../include/os/linux/zfs/sys/zfs_znode_impl.h      |   1 +
 sys/contrib/openzfs/include/sys/arc_impl.h         |   2 +-
 sys/contrib/openzfs/include/sys/dbuf.h             |   1 +
 sys/contrib/openzfs/include/sys/dmu.h              |   4 +
 sys/contrib/openzfs/include/sys/dmu_objset.h       |   2 +-
 sys/contrib/openzfs/include/sys/dmu_traverse.h     |   7 +
 sys/contrib/openzfs/include/sys/fs/zfs.h           |   3 +
 sys/contrib/openzfs/include/sys/metaslab.h         |   7 +-
 sys/contrib/openzfs/include/sys/metaslab_impl.h    |   2 +
 sys/contrib/openzfs/include/sys/mod.h              |  36 --
 sys/contrib/openzfs/include/sys/range_tree.h       |   9 +
 sys/contrib/openzfs/include/sys/spa.h              |  75 ++--
 sys/contrib/openzfs/include/sys/spa_impl.h         |   9 +
 sys/contrib/openzfs/include/sys/vdev.h             |  16 +-
 sys/contrib/openzfs/include/sys/vdev_impl.h        |   4 +-
 sys/contrib/openzfs/include/sys/xvattr.h           |   1 +
 sys/contrib/openzfs/include/sys/zfs_context.h      |  20 +-
 sys/contrib/openzfs/include/sys/zfs_znode.h        |   2 -
 sys/contrib/openzfs/include/sys/zil.h              |   4 +
 sys/contrib/openzfs/include/sys/zio.h              |  71 ++--
 sys/contrib/openzfs/include/sys/zvol.h             |   3 +-
 sys/contrib/openzfs/include/sys/zvol_impl.h        |   3 +-
 sys/contrib/openzfs/include/zfeature_common.h      |  13 +-
 sys/contrib/openzfs/include/zfs_crrd.h             |  75 ++++
 sys/contrib/openzfs/lib/libspl/Makefile.am         |   1 +
 sys/contrib/openzfs/lib/libspl/include/Makefile.am |   2 +
 .../openzfs/lib/libspl/include/os/linux/sys/stat.h |   5 +
 sys/contrib/openzfs/lib/libspl/include/sys/mod.h   |  56 +++
 .../openzfs/lib/libspl/include/sys/tunables.h      |  60 ++++
 sys/contrib/openzfs/lib/libspl/include/umem.h      |   2 +-
 .../openzfs/lib/libspl/os/linux/getmntany.c        |  36 +-
 sys/contrib/openzfs/lib/libspl/tunables.c          | 319 +++++++++++++++++
 sys/contrib/openzfs/lib/libuutil/libuutil.abi      | 196 ++++++++++-
 sys/contrib/openzfs/lib/libzdb/libzdb.c            |   4 +-
 sys/contrib/openzfs/lib/libzfs/libzfs.abi          | 246 ++++++++++++-
 sys/contrib/openzfs/lib/libzfs/libzfs_crypto.c     |   2 +-
 sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c    |  37 +-
 sys/contrib/openzfs/lib/libzfs/libzfs_pool.c       | 128 +++++--
 sys/contrib/openzfs/lib/libzfs/libzfs_status.c     |   3 +-
 .../openzfs/lib/libzfs_core/libzfs_core.abi        | 206 ++++++++++-
 sys/contrib/openzfs/lib/libzpool/Makefile.am       |   3 +-
 sys/contrib/openzfs/lib/libzpool/kernel.c          |  18 +-
 sys/contrib/openzfs/lib/libzpool/util.c            | 172 +++++----
 sys/contrib/openzfs/man/man1/ztest.1               |   8 +-
 sys/contrib/openzfs/man/man4/zfs.4                 |  51 ++-
 sys/contrib/openzfs/man/man7/zfsprops.7            |  36 +-
 sys/contrib/openzfs/man/man7/zpool-features.7      |  41 +++
 sys/contrib/openzfs/man/man7/zpoolconcepts.7       |   9 +-
 sys/contrib/openzfs/man/man8/zdb.8                 |  13 +-
 sys/contrib/openzfs/man/man8/zfs-rewrite.8         |  28 +-
 sys/contrib/openzfs/man/man8/zpool-events.8        |   4 +-
 sys/contrib/openzfs/man/man8/zpool-initialize.8    |   7 +-
 sys/contrib/openzfs/man/man8/zpool-scrub.8         |  51 ++-
 sys/contrib/openzfs/man/man8/zpool-trim.8          |   7 +-
 sys/contrib/openzfs/module/Kbuild.in               |  32 ++
 sys/contrib/openzfs/module/Makefile.bsd            |   1 +
 sys/contrib/openzfs/module/Makefile.in             |   2 +-
 .../openzfs/module/os/freebsd/spl/spl_misc.c       |   9 +
 sys/contrib/openzfs/module/os/freebsd/spl/spl_vm.c |   1 +
 .../openzfs/module/os/freebsd/zfs/zfs_acl.c        |  32 ++
 .../openzfs/module/os/freebsd/zfs/zfs_vfsops.c     |  32 +-
 .../openzfs/module/os/freebsd/zfs/zfs_vnops_os.c   | 387 +++++++++++++++++++--
 .../openzfs/module/os/freebsd/zfs/zfs_znode_os.c   |   7 -
 .../openzfs/module/os/freebsd/zfs/zvol_os.c        | 155 +++++----
 sys/contrib/openzfs/module/os/linux/spl/spl-kmem.c |  22 +-
 sys/contrib/openzfs/module/os/linux/spl/spl-proc.c |  10 +-
 .../openzfs/module/os/linux/spl/spl-thread.c       |  12 +
 sys/contrib/openzfs/module/os/linux/zfs/abd_os.c   |   4 -
 .../openzfs/module/os/linux/zfs/zfs_ctldir.c       |   2 -
 .../openzfs/module/os/linux/zfs/zfs_file_os.c      |  23 --
 .../openzfs/module/os/linux/zfs/zfs_vfsops.c       |  65 ++++
 .../openzfs/module/os/linux/zfs/zfs_vnops_os.c     |  99 +++---
 .../openzfs/module/os/linux/zfs/zfs_znode_os.c     |  24 +-
 sys/contrib/openzfs/module/os/linux/zfs/zpl_file.c |  41 ---
 .../openzfs/module/os/linux/zfs/zpl_super.c        |  12 +
 sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c  |  36 +-
 .../openzfs/module/zcommon/zfeature_common.c       |  24 ++
 sys/contrib/openzfs/module/zcommon/zfs_prop.c      |  11 +-
 sys/contrib/openzfs/module/zcommon/zfs_valstr.c    |   3 +-
 sys/contrib/openzfs/module/zfs/arc.c               |  32 +-
 sys/contrib/openzfs/module/zfs/bpobj.c             |   4 +-
 sys/contrib/openzfs/module/zfs/brt.c               |  70 +++-
 sys/contrib/openzfs/module/zfs/dbuf.c              |  82 ++++-
 sys/contrib/openzfs/module/zfs/ddt.c               |  15 +-
 sys/contrib/openzfs/module/zfs/dmu.c               |  11 +-
 sys/contrib/openzfs/module/zfs/dmu_diff.c          |   4 +-
 sys/contrib/openzfs/module/zfs/dmu_direct.c        |   2 +-
 sys/contrib/openzfs/module/zfs/dmu_objset.c        |   8 +-
 sys/contrib/openzfs/module/zfs/dmu_recv.c          |   8 +-
 sys/contrib/openzfs/module/zfs/dmu_redact.c        |   4 +-
 sys/contrib/openzfs/module/zfs/dmu_send.c          |   4 +-
 sys/contrib/openzfs/module/zfs/dmu_traverse.c      |  17 +-
 sys/contrib/openzfs/module/zfs/dnode.c             |  19 +-
 sys/contrib/openzfs/module/zfs/dsl_bookmark.c      |   2 +-
 sys/contrib/openzfs/module/zfs/dsl_crypt.c         |   2 +-
 sys/contrib/openzfs/module/zfs/dsl_dataset.c       |  20 +-
 sys/contrib/openzfs/module/zfs/dsl_deadlist.c      |   4 +-
 sys/contrib/openzfs/module/zfs/dsl_destroy.c       |  12 +-
 sys/contrib/openzfs/module/zfs/dsl_pool.c          |   2 +-
 sys/contrib/openzfs/module/zfs/dsl_scan.c          |  27 +-
 sys/contrib/openzfs/module/zfs/metaslab.c          | 182 +++++-----
 sys/contrib/openzfs/module/zfs/range_tree.c        |  96 +++--
 sys/contrib/openzfs/module/zfs/spa.c               | 194 ++++++++++-
 sys/contrib/openzfs/module/zfs/spa_errlog.c        |   4 +-
 sys/contrib/openzfs/module/zfs/spa_misc.c          |  11 +
 sys/contrib/openzfs/module/zfs/vdev.c              |  57 ++-
 sys/contrib/openzfs/module/zfs/vdev_indirect.c     |   2 +-
 sys/contrib/openzfs/module/zfs/vdev_initialize.c   |   5 +-
 sys/contrib/openzfs/module/zfs/vdev_mirror.c       |   4 +-
 sys/contrib/openzfs/module/zfs/vdev_raidz.c        |  28 +-
 sys/contrib/openzfs/module/zfs/vdev_rebuild.c      |   5 +-
 sys/contrib/openzfs/module/zfs/vdev_removal.c      |  30 +-
 sys/contrib/openzfs/module/zfs/vdev_trim.c         |  24 +-
 sys/contrib/openzfs/module/zfs/zap.c               |   2 +-
 sys/contrib/openzfs/module/zfs/zcp.c               |   2 +-
 sys/contrib/openzfs/module/zfs/zfs_chksum.c        |  69 ++--
 sys/contrib/openzfs/module/zfs/zfs_crrd.c          | 227 ++++++++++++
 sys/contrib/openzfs/module/zfs/zfs_ioctl.c         |  36 +-
 sys/contrib/openzfs/module/zfs/zfs_log.c           |  16 +-
 sys/contrib/openzfs/module/zfs/zfs_vnops.c         |  31 +-
 sys/contrib/openzfs/module/zfs/zil.c               |  95 ++++-
 sys/contrib/openzfs/module/zfs/zio.c               | 326 +++++++++++------
 sys/contrib/openzfs/module/zfs/zio_checksum.c      |  31 +-
 sys/contrib/openzfs/module/zfs/zvol.c              | 342 ++++++++++--------
 sys/contrib/openzfs/module/zstd/zfs_zstd.c         |   3 +-
 sys/contrib/openzfs/rpm/generic/zfs.spec.in        |  16 +-
 sys/contrib/openzfs/scripts/spdxcheck.pl           |   1 -
 sys/contrib/openzfs/tests/runfiles/common.run      |  22 +-
 sys/contrib/openzfs/tests/runfiles/sanity.run      |   2 +-
 .../tests/test-runner/bin/test-runner.py.in        |   5 +-
 .../openzfs/tests/test-runner/bin/zts-report.py.in |   4 +-
 .../openzfs/tests/test-runner/include/logapi.shlib |   7 +-
 .../tests/zfs-tests/callbacks/zfs_dmesg.ksh        |   7 +-
 sys/contrib/openzfs/tests/zfs-tests/cmd/.gitignore |   1 +
 .../openzfs/tests/zfs-tests/cmd/Makefile.am        |   4 +-
 sys/contrib/openzfs/tests/zfs-tests/cmd/draid.c    |   2 +-
 .../openzfs/tests/zfs-tests/cmd/idmap_util.c       |   2 +-
 sys/contrib/openzfs/tests/zfs-tests/cmd/mktree.c   |   2 +-
 .../openzfs/tests/zfs-tests/cmd/mmap_ftruncate.c   |  85 +++++
 .../openzfs/tests/zfs-tests/cmd/mmapwrite.c        |   4 +-
 .../openzfs/tests/zfs-tests/include/commands.cfg   |   1 +
 .../openzfs/tests/zfs-tests/include/libtest.shlib  |   4 +-
 .../openzfs/tests/zfs-tests/include/tunables.cfg   |   1 +
 .../openzfs/tests/zfs-tests/tests/Makefile.am      |  15 +-
 .../functional/alloc_class/alloc_class_002_neg.ksh |   5 -
 .../functional/alloc_class/alloc_class_003_pos.ksh |   8 +-
 .../functional/alloc_class/alloc_class_004_pos.ksh |   5 +-
 .../functional/alloc_class/alloc_class_009_pos.ksh |   5 +-
 .../functional/alloc_class/alloc_class_010_pos.ksh |   2 +-
 .../functional/alloc_class/alloc_class_011_neg.ksh |   4 +-
 .../functional/alloc_class/alloc_class_014_neg.ksh |  39 ---
 .../functional/alloc_class/alloc_class_015_pos.ksh |  46 ---
 ...ock_cloning_copyfilerange_fallback_same_txg.ksh |  21 ++
 .../tests/functional/cli_root/zdb/zdb_tunables.ksh |  71 ++++
 .../cli_root/zfs_rewrite/zfs_rewrite_physical.ksh  | 100 ++++++
 .../zpool_create/zpool_create_features_001_pos.ksh |   2 +-
 .../zpool_create/zpool_create_features_005_pos.ksh |   3 +
 .../functional/cli_root/zpool_get/zpool_get.cfg    |   3 +
 .../zpool_initialize_multiple_pools.ksh            | 131 +++++++
 .../cli_root/zpool_scrub/zpool_scrub_001_neg.ksh   |   3 +-
 .../zpool_scrub/zpool_scrub_date_range_001.ksh     |  94 +++++
 .../zpool_scrub/zpool_scrub_multiple_pools.ksh     | 128 +++++++
 .../zpool_trim/zpool_trim_multiple_pools.ksh       | 123 +++++++
 .../tests/functional/cp_files/cp_files_002_pos.ksh |   4 +-
 .../functional/gang_blocks/gang_blocks.kshlib      |  17 +
 .../gang_blocks/gang_blocks_dyn_header_neg.ksh     |  53 +++
 .../gang_blocks/gang_blocks_dyn_header_pos.ksh     |  81 +++++
 .../gang_blocks/gang_blocks_dyn_multi.ksh          |  54 +++
 .../tests/functional/mmap/mmap_ftruncate.ksh       |  80 +++++
 .../functional/pool_checkpoint/checkpoint_zdb.ksh  |   2 +
 sys/modules/zfs/Makefile                           |   1 +
 sys/modules/zfs/zfs_config.h                       |  16 +-
 sys/modules/zfs/zfs_gitrev.h                       |   2 +-
 217 files changed, 5829 insertions(+), 1720 deletions(-)

diff --cc cddl/lib/libspl/Makefile
index d44e5cb19ab4,000000000000..13fd6d96f2af
mode 100644,000000..100644
--- a/cddl/lib/libspl/Makefile
+++ b/cddl/lib/libspl/Makefile
@@@ -1,49 -1,0 +1,50 @@@
 +.include <bsd.init.mk>
 +.include <bsd.compiler.mk>
 +
 +.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libspl
 +.PATH: ${SRCTOP}/sys/contrib/openzfs/include
 +
 +LIB=  spl
 +LIBADD=
 +PACKAGE=      libzfs
 +
 +SRCS = \
 +        assert.c \
 +      backtrace.c \
 +        list.c \
 +        mkdirp.c \
 +        os/freebsd/zone.c \
 +        page.c \
 +        timestamp.c \
++      tunables.c \
 +        include/sys/list.h \
 +        include/sys/list_impl.h
 +
 +# These functions are not required when bootstrapping and the atomic code
 +# will not compile when building on macOS.
 +.if !defined(BOOTSTRAPPING)
 +SRCS += \
 +        atomic.c \
 +        getexecname.c \
 +        os/freebsd/getexecname.c \
 +        os/freebsd/gethostid.c \
 +        os/freebsd/getmntany.c \
 +        os/freebsd/mnttab.c
 +.endif
 +
 +WARNS?=       2
 +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}/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+= -include ${SRCTOP}/sys/modules/zfs/zfs_config.h
 +.if ${COMPILER_TYPE} == "clang"
 +CFLAGS.atomic.c+=     -Wno-error=atomic-alignment
 +.endif
 +
 +.include <bsd.lib.mk>
diff --cc cddl/lib/libzpool/Makefile
index 5a69843d6c8e,000000000000..4da3840e59f0
mode 100644,000000..100644
--- a/cddl/lib/libzpool/Makefile
+++ b/cddl/lib/libzpool/Makefile
@@@ -1,342 -1,0 +1,344 @@@
 +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
 +
 +.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 = \
 +      arc_os.c \
 +      kernel.c \
 +      taskq.c \
 +      util.c \
 +      zfs_debug.c
 +
 +.PATH: ${ZFSTOP}/module/os/linux/zfs
 +
 +KERNEL_C = \
 +      simd_stat.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 \
 +        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_direct.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_crrd.c \
++      zfs_debug_common.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
 +
 +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 \
 +      -I${SRCTOP}/compat/linuxkpi/common/include/linux \
 +      -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
 +
 +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 stand/libsa/zfs/spl/sys/zfs_context.h
index 48f164317611,000000000000..9f12955dd05f
mode 100644,000000..100644
--- a/stand/libsa/zfs/spl/sys/zfs_context.h
+++ b/stand/libsa/zfs/spl/sys/zfs_context.h
@@@ -1,32 -1,0 +1,32 @@@
 +/*
 + * Copyright 2022, Netflix, Inc
 + *
 + * SPDX-License-Identifier: BSD-2-Clause
 + */
 +
 +#pragma once
 +
 +/* TODO: openzfs/include/sys/uio_impl.h must not be included in stand */
 +#ifndef _SYS_UIO_IMPL_H
 +#define _SYS_UIO_IMPL_H
 +#endif
 +
 +/*
 + * sys/atomic.h must be included after sys/sysmacros.h. The latter includes
 + * machine/atomic.h, which interferes. Sadly, upstream includes them in the
 + * wrong order, so we include it here to fix that.
 + */
 +#include <sys/sysmacros.h>
 +
 +#include_next <sys/zfs_context.h>
 +
- #define       ZFS_MODULE_PARAM_ARGS void
++#define       SYSCTL_HANDLER_ARGS void
 +
 +/*
 + * Not sure why I need these, but including the canonical stand.h fails 
because
 + * the normal string.h doesn't like all the other shenanigans in this 
environment.
 + */
 +void *memcpy(void *dst, const void *src, size_t len);
 +void *memset(void *dest, int c, size_t len);
 +void *memmem(const void *big, size_t big_len, const void *little,
 +         size_t little_len);
diff --cc sys/conf/files
index b7c19fae0b8e,000000000000..be65ed20d6aa
mode 100644,000000..100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@@ -1,5304 -1,0 +1,5305 @@@
 +#
 +# 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} ${.OBJDIR}'" \
 +      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_nvme_all.c                optional ctl
 +cam/ctl/ctl_nvme_cmd_table.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_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_os.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/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/zfs_valstr.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}"
*** 6572 LINES SKIPPED ***

Reply via email to