Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Nov 2022 20:49:14 GMT
From:      Martin Matuska <mm@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: dbd5678dca91 - main - zfs: merge openzfs/zfs@2163cde45
Message-ID:  <202211162049.2AGKnEwu034988@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by mm:

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

commit dbd5678dca91abcefe8d046aa2f9b66497a95ffb
Merge: 61b146ba43cd 2163cde450d0
Author:     Martin Matuska <mm@FreeBSD.org>
AuthorDate: 2022-11-16 20:25:24 +0000
Commit:     Martin Matuska <mm@FreeBSD.org>
CommitDate: 2022-11-16 20:27:42 +0000

    zfs: merge openzfs/zfs@2163cde45
    
    Notable upstream pull request merges:
      #13680 Add options to zfs redundant_metadata property
      #13758 Allow mounting snapshots in .zfs/snapshot as a regular user
      #13838 quota: disable quota check for ZVOL
      #13839 quota: extend quota for dataset
      #13973 Fix memory leaks in dmu_send()/dmu_send_obj()
      #13977 Avoid unnecessary metaslab_check_free calling
      #13978 PAM: Fix unchecked return value from zfs_key_config_load()
      #13979 Handle possible null pointers from malloc/strdup/strndup()
      #13997 zstream: allow decompress to fix metadata for uncompressed
             records
      #13998 zvol_wait logic may terminate prematurely
      #14001 FreeBSD: Fix a pair of bugs in zfs_fhtovp()
      #14003 Stop ganging due to past vdev write errors
      #14039 Optimize microzaps
      #14050 Fix draid2+2s metadata error on simultaneous 2 drive failures
      #14062 zed: Avoid core dump if wholedisk property does not exist
      #14077 Propagate extent_bytes change to autotrim thread
      #14079 FreeBSD: vn_flush_cached_data: observe vnode locking contract
      #14093 Fix ARC target collapse when zfs_arc_meta_limit_percent=100
      #14106 Add ability to recompress send streams with new compression
             algorithm
      #14119 Deny receiving into encrypted datasets if the keys are not
             loaded
      #14120 Fix arc_p aggressive increase
      #14129 zed: Prevent special vdev to be replaced by hot spare
      #14133 Expose zfs_vdev_open_timeout_ms as a tunable
      #14135 FreeBSD: Fix out of bounds read in zfs_ioctl_ozfs_to_legacy()
      #14152 Adds the `-p` option to `zfs holds`
      #14161 Handle and detect #13709's unlock regression
    
    Obtained from:  OpenZFS
    OpenZFS commit: 2163cde450d0898b5f7bac16afb4e238485411ff

 cddl/usr.bin/zstream/Makefile                      |   1 +
 sys/conf/kern.pre.mk                               |   3 +-
 .../openzfs/.github/workflows/checkstyle.yaml      |   4 +-
 sys/contrib/openzfs/.github/workflows/codeql.yml   |  36 +
 .../.github/workflows/zfs-tests-functional.yml     |   4 +-
 .../openzfs/.github/workflows/zfs-tests-sanity.yml |   4 +-
 sys/contrib/openzfs/.github/workflows/zloop.yml    |   6 +-
 sys/contrib/openzfs/AUTHORS                        |   2 +
 sys/contrib/openzfs/META                           |   2 +-
 sys/contrib/openzfs/Makefile.am                    |   2 +-
 sys/contrib/openzfs/cmd/arc_summary                |   8 +-
 sys/contrib/openzfs/cmd/raidz_test/raidz_test.c    |   4 +-
 sys/contrib/openzfs/cmd/zdb/zdb.c                  |  23 +-
 sys/contrib/openzfs/cmd/zdb/zdb_il.c               |  11 +
 sys/contrib/openzfs/cmd/zed/agents/fmd_api.c       |   1 +
 sys/contrib/openzfs/cmd/zed/agents/fmd_serd.c      |  19 +
 sys/contrib/openzfs/cmd/zed/agents/zfs_mod.c       |  22 +-
 sys/contrib/openzfs/cmd/zed/zed_event.c            |   6 +-
 sys/contrib/openzfs/cmd/zed/zed_exec.c             |   4 +
 sys/contrib/openzfs/cmd/zfs/zfs_main.c             |  85 ++-
 sys/contrib/openzfs/cmd/zhack.c                    |   8 +-
 sys/contrib/openzfs/cmd/zpool/zpool_main.c         |   9 +-
 sys/contrib/openzfs/cmd/zstream/Makefile.am        |   1 +
 sys/contrib/openzfs/cmd/zstream/zstream.c          |   4 +
 sys/contrib/openzfs/cmd/zstream/zstream.h          |   1 +
 .../openzfs/cmd/zstream/zstream_decompress.c       |  40 +-
 sys/contrib/openzfs/cmd/zstream/zstream_dump.c     |   8 +-
 .../openzfs/cmd/zstream/zstream_recompress.c       | 356 +++++++++
 sys/contrib/openzfs/cmd/ztest.c                    |  42 +-
 sys/contrib/openzfs/cmd/zvol_wait                  |   7 +
 sys/contrib/openzfs/config/kernel-dentry-alias.m4  |  30 +
 sys/contrib/openzfs/config/kernel-iattr-vfsid.m4   |  24 +
 sys/contrib/openzfs/config/kernel-idmap_mnt_api.m4 |  25 +
 sys/contrib/openzfs/config/kernel-mod-param.m4     |  33 -
 sys/contrib/openzfs/config/kernel-rename.m4        |  71 +-
 sys/contrib/openzfs/config/kernel.m4               |  23 +-
 sys/contrib/openzfs/contrib/coverity/model.c       | 389 ++++++++--
 sys/contrib/openzfs/contrib/debian/changelog       |   7 +
 sys/contrib/openzfs/contrib/debian/clean           |  11 +
 sys/contrib/openzfs/contrib/debian/control         | 328 +++++++++
 .../openzfs/contrib/debian/control.modules.in      |  33 +
 sys/contrib/openzfs/contrib/debian/copyright       |  19 +
 sys/contrib/openzfs/contrib/debian/not-installed   |  13 +
 .../openzfs/contrib/debian/openzfs-libnvpair3.docs |   2 +
 .../contrib/debian/openzfs-libnvpair3.install.in   |   1 +
 .../contrib/debian/openzfs-libpam-zfs.install      |   2 +
 .../contrib/debian/openzfs-libpam-zfs.postinst     |   6 +
 .../contrib/debian/openzfs-libpam-zfs.prerm        |   8 +
 .../openzfs/contrib/debian/openzfs-libuutil3.docs  |   2 +
 .../contrib/debian/openzfs-libuutil3.install.in    |   1 +
 .../openzfs/contrib/debian/openzfs-libzfs-dev.docs |   2 +
 .../contrib/debian/openzfs-libzfs-dev.install.in   |   3 +
 .../openzfs/contrib/debian/openzfs-libzfs4.docs    |   2 +
 .../contrib/debian/openzfs-libzfs4.install.in      |   2 +
 .../contrib/debian/openzfs-libzfsbootenv1.docs     |   2 +
 .../debian/openzfs-libzfsbootenv1.install.in       |   1 +
 .../openzfs/contrib/debian/openzfs-libzpool5.docs  |   2 +
 .../contrib/debian/openzfs-libzpool5.install.in    |   1 +
 .../contrib/debian/openzfs-python3-pyzfs.install   |   1 +
 .../openzfs/contrib/debian/openzfs-zfs-dkms.config |  31 +
 .../openzfs/contrib/debian/openzfs-zfs-dkms.dkms   |   1 +
 .../openzfs/contrib/debian/openzfs-zfs-dkms.docs   |   2 +
 .../contrib/debian/openzfs-zfs-dkms.install        |   1 +
 .../contrib/debian/openzfs-zfs-dkms.postinst       |  51 ++
 .../openzfs/contrib/debian/openzfs-zfs-dkms.prerm  |   8 +
 .../contrib/debian/openzfs-zfs-dkms.templates      |  40 +
 .../contrib/debian/openzfs-zfs-dkms.triggers       |   1 +
 .../contrib/debian/openzfs-zfs-dracut.install      |   2 +
 .../contrib/debian/openzfs-zfs-initramfs.install   |   2 +
 .../openzfs-zfs-modules-_KVERS_-di.install.in      |   2 +
 .../debian/openzfs-zfs-modules-_KVERS_.install.in  |   2 +
 .../debian/openzfs-zfs-modules-_KVERS_.postinst.in |  16 +
 .../debian/openzfs-zfs-modules-_KVERS_.postrm.in   |   7 +
 .../contrib/debian/openzfs-zfs-test.install        |  15 +
 .../openzfs/contrib/debian/openzfs-zfs-zed.install |   5 +
 .../contrib/debian/openzfs-zfs-zed.postinst        |  20 +
 .../openzfs/contrib/debian/openzfs-zfs-zed.postrm  |  17 +
 .../openzfs/contrib/debian/openzfs-zfs-zed.prerm   |  16 +
 .../contrib/debian/openzfs-zfs-zed.zfs-zed.init    |   1 +
 .../openzfs/contrib/debian/openzfs-zfsutils.docs   |   2 +
 .../contrib/debian/openzfs-zfsutils.examples       |   5 +
 .../contrib/debian/openzfs-zfsutils.install        | 135 ++++
 .../contrib/debian/openzfs-zfsutils.postinst       |  28 +
 .../debian/openzfs-zfsutils.zfs-import.init        |   1 +
 .../debian/openzfs-zfsutils.zfs-load-key.init      |   1 +
 .../contrib/debian/openzfs-zfsutils.zfs-mount.init |   1 +
 .../contrib/debian/openzfs-zfsutils.zfs-share.init |   1 +
 sys/contrib/openzfs/contrib/debian/rules           | 223 ++++++
 sys/contrib/openzfs/contrib/debian/source/format   |   1 +
 .../usr/share/initramfs-tools/conf.d/zfs           |   8 +
 .../usr/share/initramfs-tools/hooks/zdev           |  67 ++
 .../contrib/dracut/90zfs/module-setup.sh.in        |  28 +
 .../openzfs/contrib/pam_zfs_key/pam_zfs_key.c      |   5 +-
 sys/contrib/openzfs/etc/Makefile.am                |   1 +
 sys/contrib/openzfs/include/libuutil_impl.h        |  31 +-
 sys/contrib/openzfs/include/libzfs.h               |  10 +-
 sys/contrib/openzfs/include/libzutil.h             |  27 +-
 .../include/os/freebsd/spl/acl/acl_common.h        |   2 +-
 .../openzfs/include/os/freebsd/spl/sys/debug.h     |   5 +-
 .../openzfs/include/os/freebsd/spl/sys/dkio.h      | 460 ------------
 .../openzfs/include/os/freebsd/spl/sys/isa_defs.h  | 415 -----------
 .../openzfs/include/os/freebsd/spl/sys/kmem.h      |   3 +
 .../openzfs/include/os/freebsd/spl/sys/mod_os.h    |  18 +-
 .../openzfs/include/os/freebsd/spl/sys/sysmacros.h |  40 -
 .../openzfs/include/os/freebsd/spl/sys/types.h     |   2 +
 .../openzfs/include/os/freebsd/spl/sys/vnode.h     |  12 +-
 .../include/os/freebsd/zfs/sys/zfs_ioctl_compat.h  |  13 +
 .../include/os/freebsd/zfs/sys/zfs_vnops_os.h      |  13 +-
 .../include/os/linux/kernel/linux/blkdev_compat.h  |  10 +-
 .../include/os/linux/kernel/linux/dcache_compat.h  |  21 +
 .../include/os/linux/kernel/linux/mod_compat.h     |  69 +-
 .../include/os/linux/kernel/linux/vfs_compat.h     |  13 +
 .../include/os/linux/kernel/linux/xattr_compat.h   |  10 +-
 .../openzfs/include/os/linux/spl/sys/cred.h        |  80 +-
 .../openzfs/include/os/linux/spl/sys/debug.h       |  37 +-
 .../openzfs/include/os/linux/spl/sys/isa_defs.h    |  38 +-
 .../openzfs/include/os/linux/spl/sys/kmem.h        |   2 +
 .../openzfs/include/os/linux/spl/sys/sysmacros.h   |  10 +
 .../openzfs/include/os/linux/spl/sys/types.h       |   3 +
 .../openzfs/include/os/linux/zfs/sys/policy.h      |   5 +-
 .../openzfs/include/os/linux/zfs/sys/trace_acl.h   |   9 +-
 .../include/os/linux/zfs/sys/trace_common.h        |   6 +-
 .../openzfs/include/os/linux/zfs/sys/zfs_dir.h     |   1 +
 .../include/os/linux/zfs/sys/zfs_vnops_os.h        |  16 +-
 sys/contrib/openzfs/include/os/linux/zfs/sys/zpl.h |   9 +-
 sys/contrib/openzfs/include/sys/arc_impl.h         |   6 +-
 sys/contrib/openzfs/include/sys/btree.h            |  15 +-
 sys/contrib/openzfs/include/sys/dbuf.h             |   4 +-
 sys/contrib/openzfs/include/sys/dmu.h              |   7 +
 sys/contrib/openzfs/include/sys/dmu_zfetch.h       |   2 +-
 sys/contrib/openzfs/include/sys/dsl_deadlist.h     |   2 +-
 sys/contrib/openzfs/include/sys/dsl_pool.h         |   8 +-
 sys/contrib/openzfs/include/sys/fs/zfs.h           |   6 +-
 sys/contrib/openzfs/include/sys/mmp.h              |   2 +-
 sys/contrib/openzfs/include/sys/spa.h              |   8 +-
 sys/contrib/openzfs/include/sys/vdev_impl.h        |   5 +-
 sys/contrib/openzfs/include/sys/zap_impl.h         |  11 +-
 sys/contrib/openzfs/include/sys/zcp.h              |   4 +-
 sys/contrib/openzfs/include/sys/zfs_acl.h          |  11 +-
 sys/contrib/openzfs/include/sys/zfs_context.h      |   5 +
 sys/contrib/openzfs/include/sys/zfs_ioctl_impl.h   |   2 +-
 sys/contrib/openzfs/include/sys/zfs_onexit.h       |   2 +-
 sys/contrib/openzfs/include/sys/zfs_znode.h        |   7 +-
 sys/contrib/openzfs/include/sys/zil.h              |  21 +-
 sys/contrib/openzfs/include/sys/zio.h              | 102 +--
 sys/contrib/openzfs/lib/libefi/rdwr_efi.c          |   6 +-
 sys/contrib/openzfs/lib/libshare/os/linux/smb.c    |  17 +-
 .../openzfs/lib/libspl/include/sys/isa_defs.h      |   6 +-
 sys/contrib/openzfs/lib/libspl/include/sys/types.h |  25 -
 sys/contrib/openzfs/lib/libspl/include/umem.h      |  20 +-
 .../openzfs/lib/libspl/os/linux/gethostid.c        |   6 +-
 sys/contrib/openzfs/lib/libspl/os/linux/zone.c     |   2 +-
 sys/contrib/openzfs/lib/libuutil/uu_avl.c          |  30 +-
 sys/contrib/openzfs/lib/libuutil/uu_list.c         |  30 +-
 sys/contrib/openzfs/lib/libzfs/libzfs.abi          |  36 +-
 sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c    |  12 +-
 sys/contrib/openzfs/lib/libzfs/libzfs_diff.c       |   2 +-
 sys/contrib/openzfs/lib/libzfs/libzfs_pool.c       |   9 +-
 sys/contrib/openzfs/lib/libzfs/libzfs_sendrecv.c   |   9 +-
 sys/contrib/openzfs/lib/libzfs/libzfs_util.c       |   2 +-
 .../openzfs/lib/libzfs/os/freebsd/libzfs_compat.c  |   2 +
 sys/contrib/openzfs/lib/libzfs_core/libzfs_core.c  |   2 +-
 .../lib/libzfs_core/os/freebsd/libzfs_core_ioctl.c |  13 +-
 sys/contrib/openzfs/lib/libzpool/kernel.c          |  31 +-
 sys/contrib/openzfs/lib/libzpool/util.c            |   7 +-
 .../lib/libzutil/os/linux/zutil_device_path_os.c   |   8 +-
 sys/contrib/openzfs/lib/libzutil/zutil_import.c    | 118 +--
 sys/contrib/openzfs/lib/libzutil/zutil_import.h    |  15 -
 sys/contrib/openzfs/man/man4/zfs.4                 | 145 ++--
 sys/contrib/openzfs/man/man7/vdevprops.7           |   5 +-
 sys/contrib/openzfs/man/man7/zfsprops.7            |  18 +-
 sys/contrib/openzfs/man/man8/zfs-hold.8            |   6 +-
 sys/contrib/openzfs/man/man8/zstream.8             |  33 +-
 sys/contrib/openzfs/module/Kbuild.in               |   6 +-
 .../openzfs/module/icp/algs/blake3/blake3.c        |   4 +-
 sys/contrib/openzfs/module/icp/algs/modes/ccm.c    |   1 -
 sys/contrib/openzfs/module/icp/algs/modes/ctr.c    |   1 -
 sys/contrib/openzfs/module/icp/algs/modes/gcm.c    |   1 -
 sys/contrib/openzfs/module/icp/algs/modes/modes.c  |   4 +-
 .../openzfs/module/icp/asm-x86_64/aes/aes_amd64.S  |   2 +
 .../module/icp/asm-x86_64/blake3/blake3_avx2.S     |  12 +-
 .../module/icp/asm-x86_64/blake3/blake3_avx512.S   |  16 +-
 .../module/icp/asm-x86_64/blake3/blake3_sse2.S     |  16 +-
 .../module/icp/asm-x86_64/blake3/blake3_sse41.S    |  16 +-
 .../module/icp/asm-x86_64/modes/aesni-gcm-x86_64.S |  20 +-
 .../module/icp/asm-x86_64/modes/ghash-x86_64.S     |  16 +-
 .../module/icp/asm-x86_64/sha2/sha256_impl.S       |   1 +
 .../module/icp/asm-x86_64/sha2/sha512_impl.S       |   1 +
 .../module/icp/include/sys/ia32/asm_linkage.h      |  27 +-
 sys/contrib/openzfs/module/icp/io/sha2_mod.c       |  13 +-
 sys/contrib/openzfs/module/lua/lapi.c              |   4 +-
 sys/contrib/openzfs/module/lua/ldo.c               |   2 +-
 .../openzfs/module/lua/setjmp/setjmp_x86_64.S      |  15 +-
 .../openzfs/module/os/freebsd/spl/acl_common.c     |   4 +-
 .../openzfs/module/os/freebsd/spl/spl_string.c     |  30 +
 .../openzfs/module/os/freebsd/spl/spl_vfs.c        |  12 -
 .../openzfs/module/os/freebsd/zfs/kmod_core.c      |  16 +-
 .../openzfs/module/os/freebsd/zfs/sysctl_os.c      |  30 +-
 .../openzfs/module/os/freebsd/zfs/vdev_file.c      |   8 +-
 .../openzfs/module/os/freebsd/zfs/zfs_acl.c        |  37 +-
 .../openzfs/module/os/freebsd/zfs/zfs_dir.c        |   4 +-
 .../module/os/freebsd/zfs/zfs_ioctl_compat.c       |   4 +-
 .../openzfs/module/os/freebsd/zfs/zfs_vfsops.c     | 278 ++++++-
 .../openzfs/module/os/freebsd/zfs/zfs_vnops_os.c   |  68 +-
 .../openzfs/module/os/freebsd/zfs/zfs_znode.c      |   5 +-
 .../openzfs/module/os/freebsd/zfs/zio_crypt.c      |   1 -
 .../openzfs/module/os/freebsd/zfs/zvol_os.c        |   8 +-
 .../openzfs/module/os/linux/spl/spl-condvar.c      |   2 +-
 sys/contrib/openzfs/module/os/linux/spl/spl-err.c  |   2 +-
 .../openzfs/module/os/linux/spl/spl-generic.c      | 112 ++-
 .../openzfs/module/os/linux/spl/spl-kmem-cache.c   |   2 +-
 .../openzfs/module/os/linux/spl/spl-procfs-list.c  |   2 +-
 .../openzfs/module/os/linux/spl/spl-taskq.c        |   1 -
 sys/contrib/openzfs/module/os/linux/spl/spl-zone.c |   3 +-
 sys/contrib/openzfs/module/os/linux/zfs/abd_os.c   |  10 +-
 sys/contrib/openzfs/module/os/linux/zfs/arc_os.c   |   8 +-
 sys/contrib/openzfs/module/os/linux/zfs/mmp_os.c   |   2 +-
 sys/contrib/openzfs/module/os/linux/zfs/policy.c   |  16 +-
 .../openzfs/module/os/linux/zfs/spa_misc_os.c      |   4 +-
 .../openzfs/module/os/linux/zfs/vdev_disk.c        |  35 +-
 .../openzfs/module/os/linux/zfs/vdev_file.c        |   8 +-
 sys/contrib/openzfs/module/os/linux/zfs/zfs_acl.c  |  93 ++-
 .../openzfs/module/os/linux/zfs/zfs_ctldir.c       |   1 -
 .../openzfs/module/os/linux/zfs/zfs_debug.c        |   2 +-
 sys/contrib/openzfs/module/os/linux/zfs/zfs_dir.c  | 104 ++-
 .../openzfs/module/os/linux/zfs/zfs_file_os.c      |   2 +-
 .../openzfs/module/os/linux/zfs/zfs_sysfs.c        |   6 +-
 .../openzfs/module/os/linux/zfs/zfs_vfsops.c       |   5 +-
 .../openzfs/module/os/linux/zfs/zfs_vnops_os.c     | 354 ++++++---
 .../openzfs/module/os/linux/zfs/zfs_znode.c        |   9 +-
 .../openzfs/module/os/linux/zfs/zio_crypt.c        |   3 +-
 .../openzfs/module/os/linux/zfs/zpl_ctldir.c       |   6 +-
 sys/contrib/openzfs/module/os/linux/zfs/zpl_file.c |   6 +-
 .../openzfs/module/os/linux/zfs/zpl_inode.c        | 159 ++--
 .../openzfs/module/os/linux/zfs/zpl_super.c        |   4 +
 .../openzfs/module/os/linux/zfs/zpl_xattr.c        |  34 +-
 sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c  |  10 +-
 sys/contrib/openzfs/module/zcommon/zfs_prop.c      |  31 +-
 sys/contrib/openzfs/module/zcommon/zpool_prop.c    |   3 +
 sys/contrib/openzfs/module/zfs/abd.c               |   6 +-
 sys/contrib/openzfs/module/zfs/arc.c               |  88 +--
 sys/contrib/openzfs/module/zfs/btree.c             |  50 +-
 sys/contrib/openzfs/module/zfs/dataset_kstats.c    |   7 +-
 sys/contrib/openzfs/module/zfs/dbuf.c              |  11 +-
 sys/contrib/openzfs/module/zfs/dmu.c               |  27 +-
 sys/contrib/openzfs/module/zfs/dmu_objset.c        |   7 +-
 sys/contrib/openzfs/module/zfs/dmu_recv.c          |   6 +-
 sys/contrib/openzfs/module/zfs/dmu_send.c          |  15 +-
 sys/contrib/openzfs/module/zfs/dmu_traverse.c      |   3 +-
 sys/contrib/openzfs/module/zfs/dmu_zfetch.c        |   4 +-
 sys/contrib/openzfs/module/zfs/dsl_bookmark.c      |   1 -
 sys/contrib/openzfs/module/zfs/dsl_crypt.c         |  18 +-
 sys/contrib/openzfs/module/zfs/dsl_dataset.c       |   3 +-
 sys/contrib/openzfs/module/zfs/dsl_deadlist.c      |   5 +-
 sys/contrib/openzfs/module/zfs/dsl_dir.c           |  59 +-
 sys/contrib/openzfs/module/zfs/dsl_pool.c          |  17 +-
 sys/contrib/openzfs/module/zfs/dsl_prop.c          |  93 +++
 sys/contrib/openzfs/module/zfs/dsl_scan.c          |  17 +-
 sys/contrib/openzfs/module/zfs/fm.c                |   1 +
 sys/contrib/openzfs/module/zfs/metaslab.c          |  20 +-
 sys/contrib/openzfs/module/zfs/mmp.c               |  18 +-
 sys/contrib/openzfs/module/zfs/range_tree.c        |   1 +
 sys/contrib/openzfs/module/zfs/spa.c               |  74 +-
 sys/contrib/openzfs/module/zfs/spa_checkpoint.c    |   4 +-
 sys/contrib/openzfs/module/zfs/spa_log_spacemap.c  |  40 +-
 sys/contrib/openzfs/module/zfs/spa_misc.c          |  14 +-
 sys/contrib/openzfs/module/zfs/vdev.c              |  57 +-
 sys/contrib/openzfs/module/zfs/vdev_indirect.c     |   9 +-
 sys/contrib/openzfs/module/zfs/vdev_initialize.c   |  18 +-
 sys/contrib/openzfs/module/zfs/vdev_queue.c        |   4 +-
 sys/contrib/openzfs/module/zfs/vdev_raidz_math.c   |  23 +-
 sys/contrib/openzfs/module/zfs/vdev_rebuild.c      |  22 +-
 sys/contrib/openzfs/module/zfs/vdev_trim.c         |   5 +-
 sys/contrib/openzfs/module/zfs/zap_leaf.c          |   4 +-
 sys/contrib/openzfs/module/zfs/zap_micro.c         | 247 ++++---
 sys/contrib/openzfs/module/zfs/zcp.c               |  14 +-
 sys/contrib/openzfs/module/zfs/zcp_get.c           |   4 +-
 sys/contrib/openzfs/module/zfs/zfs_chksum.c        |  38 +-
 sys/contrib/openzfs/module/zfs/zfs_fm.c            |   2 -
 sys/contrib/openzfs/module/zfs/zfs_ioctl.c         |   8 +-
 sys/contrib/openzfs/module/zfs/zfs_log.c           |  88 ++-
 sys/contrib/openzfs/module/zfs/zfs_onexit.c        |   4 +-
 sys/contrib/openzfs/module/zfs/zfs_replay.c        | 153 +++-
 sys/contrib/openzfs/module/zfs/zfs_vnops.c         |  20 +-
 sys/contrib/openzfs/module/zfs/zil.c               |  46 +-
 sys/contrib/openzfs/module/zfs/zio.c               |  43 +-
 sys/contrib/openzfs/module/zfs/zio_compress.c      |   2 +-
 sys/contrib/openzfs/module/zfs/zvol.c              |   5 +-
 sys/contrib/openzfs/scripts/Makefile.am            |  20 +-
 sys/contrib/openzfs/scripts/cstyle.pl              |  13 +-
 sys/contrib/openzfs/scripts/debian-packaging.sh    |  36 +
 sys/contrib/openzfs/scripts/enum-extract.pl        |   2 +-
 sys/contrib/openzfs/tests/runfiles/common.run      |  14 +-
 sys/contrib/openzfs/tests/runfiles/linux.run       |   8 +
 .../openzfs/tests/test-runner/bin/zts-report.py.in |  15 +
 sys/contrib/openzfs/tests/zfs-tests/cmd/.gitignore |   2 +
 .../openzfs/tests/zfs-tests/cmd/Makefile.am        |   5 +-
 sys/contrib/openzfs/tests/zfs-tests/cmd/badsend.c  |   4 +
 .../openzfs/tests/zfs-tests/cmd/btree_test.c       |  48 +-
 .../tests/zfs-tests/cmd/checksum/edonr_test.c      |  18 +-
 .../tests/zfs-tests/cmd/checksum/sha2_test.c       |  20 +-
 .../tests/zfs-tests/cmd/checksum/skein_test.c      |  16 +-
 sys/contrib/openzfs/tests/zfs-tests/cmd/ctime.c    |   1 -
 sys/contrib/openzfs/tests/zfs-tests/cmd/draid.c    |   5 +-
 .../tests/zfs-tests/cmd/file/largest_file.c        |   2 +
 .../openzfs/tests/zfs-tests/cmd/idmap_util.c       | 808 +++++++++++++++++++++
 sys/contrib/openzfs/tests/zfs-tests/cmd/mkbusy.c   |   8 +-
 .../openzfs/tests/zfs-tests/cmd/mmap_libaio.c      |   2 +-
 .../openzfs/tests/zfs-tests/cmd/mmapwrite.c        |  14 +-
 .../openzfs/tests/zfs-tests/cmd/nvlist_to_lua.c    |   5 +
 .../openzfs/tests/zfs-tests/cmd/renameat2.c        | 128 ++++
 .../openzfs/tests/zfs-tests/cmd/stride_dd.c        |   4 +-
 .../openzfs/tests/zfs-tests/cmd/user_ns_exec.c     |   1 -
 .../openzfs/tests/zfs-tests/include/commands.cfg   |   7 +-
 .../tests/zfs-tests/include/properties.shlib       |   3 +-
 .../openzfs/tests/zfs-tests/tests/Makefile.am      |  15 +-
 .../zfs_receive/zfs_receive_to_encrypted.ksh       |  31 +-
 .../functional/cli_root/zpool_add/add-o_ashift.ksh |   6 +-
 .../cli_root/zpool_add/add_prop_ashift.ksh         |   4 +-
 .../cli_root/zpool_add/zpool_add_004_pos.ksh       |   4 +
 .../cli_root/zpool_attach/attach-o_ashift.ksh      |   4 +-
 .../cli_root/zpool_replace/replace-o_ashift.ksh    |   4 +-
 .../cli_root/zpool_replace/replace_prop_ashift.ksh |   4 +-
 .../cli_root/zpool_set/zpool_set_ashift.ksh        |   4 +-
 .../functional/fault/auto_offline_001_pos.ksh      |   5 +
 .../tests/functional/idmap_mount/cleanup.ksh       |  25 +
 .../tests/functional/idmap_mount/idmap_mount.cfg   |  25 +
 .../functional/idmap_mount/idmap_mount_001.ksh     |  76 ++
 .../functional/idmap_mount/idmap_mount_002.ksh     |  97 +++
 .../functional/idmap_mount/idmap_mount_003.ksh     | 121 +++
 .../functional/idmap_mount/idmap_mount_004.ksh     | 106 +++
 .../functional/idmap_mount/idmap_mount_005.ksh     | 138 ++++
 .../idmap_mount/idmap_mount_common.kshlib          |  23 +
 .../tests/functional/idmap_mount/setup.ksh         |  30 +
 .../functional/inheritance/inherit_001_pos.ksh     |  10 +-
 .../tests/functional/renameat2/Makefile.am         |   7 +
 .../tests/functional/renameat2/cleanup.ksh         |  34 +
 .../functional/renameat2/renameat2_exchange.ksh    |  61 ++
 .../functional/renameat2/renameat2_noreplace.ksh   |  51 ++
 .../functional/renameat2/renameat2_whiteout.ksh    |  50 ++
 .../zfs-tests/tests/functional/renameat2/setup.ksh |  37 +
 .../tests/functional/rsend/rsend_009_pos.ksh       |  43 +-
 .../functional/rsend/send-c_zstream_recompress.ksh |  58 ++
 .../tests/functional/slog/slog_replay_fs_001.ksh   |  23 +
 .../tests/functional/tmpfile/tmpfile_002_pos.c     |   7 +-
 .../tests/functional/tmpfile/tmpfile_stat_mode.c   |  30 +-
 .../functional/userquota/13709_reproducer.bz2      | Bin 0 -> 135829 bytes
 .../userquota/userspace_encrypted_13709.ksh        |  45 ++
 .../tests/perf/regression/random_readwrite.ksh     |   2 +-
 sys/modules/zfs/zfs_config.h                       |  19 +-
 sys/modules/zfs/zfs_gitrev.h                       |   2 +-
 351 files changed, 7611 insertions(+), 2695 deletions(-)

diff --cc cddl/usr.bin/zstream/Makefile
index 7ed79e8149bf,000000000000..537dde424f8f
mode 100644,000000..100644
--- a/cddl/usr.bin/zstream/Makefile
+++ b/cddl/usr.bin/zstream/Makefile
@@@ -1,37 -1,0 +1,38 @@@
 +# $FreeBSD$
 +
 +ZFSTOP=	${SRCTOP}/sys/contrib/openzfs
 +
 +.PATH: ${ZFSTOP}/cmd/zstream
 +.PATH: ${ZFSTOP}/man/man8
 +
 +PACKAGE=	zfs
 +PROG=	zstream
 +MAN=	zstream.8
 +MLINKS=	zstream.8 zstreamdump.8
 +INCS=	zstream.h
 +SRCS= \
 +	zstream.c \
 +	zstream_decompress.c \
 +	zstream_dump.c \
++	zstream_recompress.c  \
 +	zstream_redup.c \
 +	zstream_token.c
 +
 +SYMLINKS=	${BINDIR}/zstream ${BINDIR}/zstreamdump
 +
 +WARNS?=	2
 +CFLAGS+= \
 +	-DIN_BASE \
 +	-I${ZFSTOP}/include \
 +	-I${ZFSTOP}/lib/libspl/include \
 +	-I${ZFSTOP}/lib/libspl/include/os/freebsd \
 +	-I${SRCTOP}/sys \
 +	-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
 +
 +LIBADD=	geom m nvpair umem uutil avl spl zfs_core zfs zutil zpool
 +
 +.include <bsd.prog.mk>
diff --cc sys/conf/kern.pre.mk
index edde63e6850f,000000000000..d1c1f9d09dbc
mode 100644,000000..100644
--- a/sys/conf/kern.pre.mk
+++ b/sys/conf/kern.pre.mk
@@@ -1,370 -1,0 +1,371 @@@
 +# $FreeBSD$
 +
 +# Part of a unified Makefile for building kernels.  This part contains all
 +# of the definitions that need to be before %BEFORE_DEPEND.
 +
 +# Allow user to configure things that only effect src tree builds.
 +# Note: This is duplicated from src.sys.mk to ensure that we include
 +# /etc/src.conf when building the kernel. Kernels can be built without
 +# the rest of /usr/src, but they still always process SRCCONF even though
 +# the normal mechanisms to prevent that (compiling out of tree) won't
 +# work. To ensure they do work, we have to duplicate thee few lines here.
 +SRCCONF?=	/etc/src.conf
 +.if (exists(${SRCCONF}) || ${SRCCONF} != "/etc/src.conf") && !target(_srcconf_included_)
 +.include "${SRCCONF}"
 +_srcconf_included_:
 +.endif
 +
 +.include <bsd.own.mk>
 +.include <bsd.compiler.mk>
 +.include "kern.opts.mk"
 +
 +# The kernel build always occurs in the object directory which is .CURDIR.
 +.if ${.MAKE.MODE:Unormal:Mmeta}
 +.MAKE.MODE+=	curdirOk=yes
 +.endif
 +
 +# The kernel build always expects .OBJDIR=.CURDIR.
 +.OBJDIR: ${.CURDIR}
 +
 +.if defined(NO_OBJWALK) || ${MK_AUTO_OBJ} == "yes"
 +NO_OBJWALK=		t
 +NO_MODULES_OBJ=	t
 +.endif
 +.if !defined(NO_OBJWALK)
 +_obj=		obj
 +.endif
 +
 +# Can be overridden by makeoptions or /etc/make.conf
 +KERNEL_KO?=	kernel
 +KERNEL?=	kernel
 +KODIR?=		/boot/${KERNEL}
 +LDSCRIPT_NAME?=	ldscript.$M
 +LDSCRIPT?=	$S/conf/${LDSCRIPT_NAME}
 +
 +M=		${MACHINE}
 +
 +AWK?=		awk
 +CP?=		cp
 +ELFDUMP?=	elfdump
 +NM?=		nm
 +OBJCOPY?=	objcopy
 +SIZE?=		size
 +
 +.if defined(DEBUG)
 +CTFFLAGS+=	-g
 +.endif
 +.if ${MACHINE_CPUARCH} == "amd64" && ${COMPILER_TYPE} != "clang"
 +_COPTFLAGS_EXTRA=-frename-registers
 +.else
 +_COPTFLAGS_EXTRA=
 +.endif
 +COPTFLAGS?=-O2 -pipe ${_COPTFLAGS_EXTRA}
 +.if !empty(COPTFLAGS:M-O[23s]) && empty(COPTFLAGS:M-fno-strict-aliasing)
 +COPTFLAGS+= -fno-strict-aliasing
 +.endif
 +.if !defined(NO_CPU_COPTFLAGS)
 +COPTFLAGS+= ${_CPUCFLAGS}
 +.endif
 +NOSTDINC= -nostdinc
 +
 +INCLUDES= ${NOSTDINC} ${INCLMAGIC} -I. -I$S -I$S/contrib/ck/include
 +
 +CFLAGS=	${COPTFLAGS} ${DEBUG}
 +CFLAGS+= ${INCLUDES} -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h
 +CFLAGS_PARAM_INLINE_UNIT_GROWTH?=100
 +CFLAGS_PARAM_LARGE_FUNCTION_GROWTH?=1000
 +CFLAGS.gcc+= -fms-extensions -finline-limit=${INLINE_LIMIT}
 +CFLAGS.gcc+= --param inline-unit-growth=${CFLAGS_PARAM_INLINE_UNIT_GROWTH}
 +CFLAGS.gcc+= --param large-function-growth=${CFLAGS_PARAM_LARGE_FUNCTION_GROWTH}
 +CFLAGS.gcc+= -fms-extensions
 +.if defined(CFLAGS_ARCH_PARAMS)
 +CFLAGS.gcc+=${CFLAGS_ARCH_PARAMS}
 +.endif
 +WERROR?=	-Werror
 +# The following should be removed no earlier than LLVM11 being imported into the
 +# tree, to ensure we don't regress the build.  LLVM11 and GCC10 will switch the
 +# default over to -fno-common, making this redundant.
 +CFLAGS+=	-fno-common
 +
 +# XXX LOCORE means "don't declare C stuff" not "for locore.s".
 +ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} ${ASM_CFLAGS.${.IMPSRC:T}}
 +
 +COMPAT_FREEBSD32_ENABLED!= grep COMPAT_FREEBSD32 opt_global.h || true ; echo
 +
 +KASAN_ENABLED!=	grep KASAN opt_global.h || true ; echo
 +.if !empty(KASAN_ENABLED)
 +SAN_CFLAGS+=	-DSAN_NEEDS_INTERCEPTORS -DSAN_INTERCEPTOR_PREFIX=kasan \
 +		-fsanitize=kernel-address \
 +		-mllvm -asan-stack=true \
 +		-mllvm -asan-instrument-dynamic-allocas=true \
 +		-mllvm -asan-globals=true \
 +		-mllvm -asan-use-after-scope=true \
 +		-mllvm -asan-instrumentation-with-call-threshold=0 \
 +		-mllvm -asan-instrument-byval=false
 +.endif
 +
 +KCSAN_ENABLED!=	grep KCSAN opt_global.h || true ; echo
 +.if !empty(KCSAN_ENABLED)
 +SAN_CFLAGS+=	-DSAN_NEEDS_INTERCEPTORS -DSAN_INTERCEPTOR_PREFIX=kcsan \
 +		-fsanitize=thread
 +.endif
 +
 +KMSAN_ENABLED!= grep KMSAN opt_global.h || true ; echo
 +.if !empty(KMSAN_ENABLED)
 +SAN_CFLAGS+=	-DSAN_NEEDS_INTERCEPTORS -DSAN_INTERCEPTOR_PREFIX=kmsan \
 +		-fsanitize=kernel-memory
 +.endif
 +
 +KUBSAN_ENABLED!=	grep KUBSAN opt_global.h || true ; echo
 +.if !empty(KUBSAN_ENABLED)
 +SAN_CFLAGS+=	-fsanitize=undefined
 +.endif
 +
 +COVERAGE_ENABLED!=	grep COVERAGE opt_global.h || true ; echo
 +.if !empty(COVERAGE_ENABLED)
 +.if ${COMPILER_TYPE} == "clang" || \
 +    (${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 80100)
 +SAN_CFLAGS+=	-fsanitize-coverage=trace-pc,trace-cmp
 +.else
 +SAN_CFLAGS+=	-fsanitize-coverage=trace-pc
 +.endif
 +.endif
 +
 +CFLAGS+=	${SAN_CFLAGS}
 +
 +GCOV_ENABLED!=	grep GCOV opt_global.h || true ; echo
 +.if !empty(GCOV_ENABLED)
 +.if ${COMPILER_TYPE} == "gcc"
 +GCOV_CFLAGS+=	 -fprofile-arcs -ftest-coverage
 +.endif
 +.endif
 +
 +CFLAGS+=	${GCOV_CFLAGS}
 +
 +# Put configuration-specific C flags last so that they can override
 +# the others.
 +CFLAGS+=	${CONF_CFLAGS}
 +
 +.if defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mbuild-id}
 +LDFLAGS+=	--build-id=sha1
 +.endif
 +
 +.if (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
 +    ${MACHINE_CPUARCH} == "i386" || ${MACHINE} == "powerpc") && \
 +    defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mifunc} == "" && \
 +    !make(install)
 +.error amd64/arm64/i386/ppc* kernel requires linker ifunc support
 +.endif
 +.if ${MACHINE_CPUARCH} == "amd64"
 +LDFLAGS+=	-z max-page-size=2097152
 +.if ${LINKER_TYPE} != "lld"
 +LDFLAGS+=	-z common-page-size=4096
 +.else
 +.if defined(LINKER_FEATURES) && !${LINKER_FEATURES:Mifunc-noplt}
 +.warning "Linker ${LD} does not support -z ifunc-noplt -> ifunc calls are unoptimized."
 +.else
 +LDFLAGS+=	-z notext -z ifunc-noplt
 +.endif
 +.endif
 +.endif  # ${MACHINE_CPUARCH} == "amd64"
 +
 +.if ${MACHINE_CPUARCH} == "riscv"
 +# Hack: Work around undefined weak symbols being out of range when linking with
 +# LLD (address is a PC-relative calculation, and BFD works around this by
 +# rewriting the instructions to generate an absolute address of 0); -fPIE
 +# avoids this since it uses the GOT for all extern symbols, which is overly
 +# inefficient for us. Drop once undefined weak symbols work with medany.
 +.if ${LINKER_TYPE} == "lld"
 +CFLAGS+=	-fPIE
 +.endif
 +.endif
 +
 +NORMAL_C= ${CC} -c ${CFLAGS} ${WERROR} ${.IMPSRC}
 +NORMAL_S= ${CC:N${CCACHE_BIN}} -c ${ASM_CFLAGS} ${WERROR} ${.IMPSRC}
 +NORMAL_C_NOWERROR= ${CC} -c ${CFLAGS} ${.IMPSRC}
 +
 +NORMAL_M= ${AWK} -f $S/tools/makeobjops.awk ${.IMPSRC} -c ; \
 +	  ${CC} -c ${CFLAGS} ${WERROR} ${.PREFIX}.c
 +
 +NORMAL_FW= uudecode -o ${.TARGET} ${.ALLSRC}
 +NORMAL_FWO= ${CC:N${CCACHE_BIN}} -c ${ASM_CFLAGS} ${WERROR} -o ${.TARGET} \
 +	$S/kern/firmw.S -DFIRMW_FILE="${.ALLSRC:M*.fw}" \
 +	-DFIRMW_SYMBOL="${.ALLSRC:M*.fw:C/[-.\/]/_/g}"
 +
 +# for ZSTD in the kernel (include zstd/lib/freebsd before other CFLAGS)
 +ZSTD_C= ${CC} -c -DZSTD_HEAPMODE=1 -I$S/contrib/zstd/lib/freebsd ${CFLAGS} \
 +	-I$S/contrib/zstd/lib -I$S/contrib/zstd/lib/common ${WERROR} \
 +	-Wno-missing-prototypes -U__BMI__ -DZSTD_NO_INTRINSICS ${.IMPSRC}
 +# https://github.com/facebook/zstd/commit/812e8f2a [zstd 1.4.1]
 +# "Note that [GCC] autovectorization still does not do a good job on the
 +# optimized version, so it's turned off via attribute and flag.  I found
 +# that neither attribute nor command-line flag were entirely successful in
 +# turning off vectorization, which is why there were both."
 +.if ${COMPILER_TYPE} == "gcc"
 +ZSTD_DECOMPRESS_BLOCK_FLAGS= -fno-tree-vectorize
 +.endif
 +
 +ZINCDIR=$S/contrib/openzfs/include
 +# Common for dtrace / zfs
 +CDDL_CFLAGS=	\
 +	-DFREEBSD_NAMECACHE \
 +	-D_SYS_VMEM_H_ \
 +	-D__KERNEL \
 +	-D__KERNEL__ \
 +	-nostdinc \
 +	-include $S/modules/zfs/static_ccompile.h \
 +	-I${ZINCDIR} \
 +	-I${ZINCDIR}/os/freebsd \
 +	-I${ZINCDIR}/os/freebsd/spl \
 +	-I${ZINCDIR}/os/freebsd/zfs  \
 +	-I$S/modules/zfs \
 +	-I$S/contrib/openzfs/module/zstd/include \
 +	${CFLAGS} \
 +	-Wno-cast-qual \
 +	-Wno-duplicate-decl-specifier \
 +	-Wno-missing-braces \
 +	-Wno-missing-prototypes \
 +	-Wno-nested-externs \
 +	-Wno-parentheses \
 +	-Wno-pointer-arith \
 +	-Wno-strict-prototypes \
 +	-Wno-switch \
 +	-Wno-undef \
 +	-Wno-uninitialized \
 +	-Wno-unknown-pragmas \
 +	-Wno-unused \
 +	-include ${ZINCDIR}/os/freebsd/spl/sys/ccompile.h \
 +	-I$S/cddl/contrib/opensolaris/uts/common \
 +	-I$S -I$S/cddl/compat/opensolaris
 +CDDL_C=		${CC} -c ${CDDL_CFLAGS} ${WERROR} ${.IMPSRC}
 +
 +# Special flags for managing the compat compiles for ZFS
- ZFS_CFLAGS+=	${CDDL_CFLAGS} -DBUILDING_ZFS -DHAVE_UIO_ZEROCOPY \
++ZFS_CFLAGS+=	-I$S/contrib/openzfs/module/icp/include \
++	${CDDL_CFLAGS} -DBUILDING_ZFS -DHAVE_UIO_ZEROCOPY \
 +	-DWITH_NETDUMP -D__KERNEL__ -D_SYS_CONDVAR_H_ -DSMP \
 +	-DIN_FREEBSD_BASE
 +
 +.if ${MACHINE_ARCH} == "amd64"
 +ZFS_CFLAGS+= -D__x86_64 -DHAVE_SSE2 -DHAVE_SSSE3 -DHAVE_SSE4_1 -DHAVE_SSE4_2 \
 +	-DHAVE_AVX -DHAVE_AVX2 -DHAVE_AVX512F -DHAVE_AVX512VL -DHAVE_AVX512BW
 +.endif
 +
 +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" || \
 +	${MACHINE_ARCH} == "powerpcspe" || ${MACHINE_ARCH} == "arm"
 +ZFS_CFLAGS+= -DBITS_PER_LONG=32
 +.else
 +ZFS_CFLAGS+= -DBITS_PER_LONG=64
 +.endif
 +
 +
 +ZFS_ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${ZFS_CFLAGS}
 +ZFS_C=		${CC} -c ${ZFS_CFLAGS} ${WERROR} ${.IMPSRC}
 +ZFS_RPC_C=	${CC} -c ${ZFS_CFLAGS} -DHAVE_RPC_TYPES ${WERROR} ${.IMPSRC}
 +ZFS_S=		${CC} -c ${ZFS_ASM_CFLAGS} ${WERROR} ${.IMPSRC}
 +
 +# ATH driver
 +ATH_CFLAGS=	-I${SRCTOP}/sys/dev/ath ${NO_WUNUSED_BUT_SET_VARIABLE}
 +ATH_C=		${CC} -c ${CFLAGS} ${WERROR} ${ATH_CFLAGS} ${.IMPSRC}
 +
 +# Special flags for managing the compat compiles for DTrace
 +DTRACE_CFLAGS=	-DBUILDING_DTRACE ${CDDL_CFLAGS} -I$S/cddl/dev/dtrace -I$S/cddl/dev/dtrace/${MACHINE_CPUARCH}
 +.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
 +DTRACE_CFLAGS+=	-I$S/cddl/contrib/opensolaris/uts/intel -I$S/cddl/dev/dtrace/x86
 +.endif
 +DTRACE_CFLAGS+=	-I$S/cddl/contrib/opensolaris/common/util -I$S -DDIS_MEM -DSMP -I$S/cddl/compat/opensolaris
 +DTRACE_CFLAGS+=	-I$S/cddl/contrib/opensolaris/uts/common
 +DTRACE_ASM_CFLAGS=	-x assembler-with-cpp -DLOCORE ${DTRACE_CFLAGS}
 +DTRACE_C=	${CC} -c ${DTRACE_CFLAGS}	${WERROR} ${.IMPSRC}
 +DTRACE_S=	${CC} -c ${DTRACE_ASM_CFLAGS}	${WERROR} ${.IMPSRC}
 +
 +# Special flags for managing the compat compiles for DTrace/FBT
 +FBT_CFLAGS=	-DBUILDING_DTRACE -nostdinc -I$S/cddl/dev/fbt/${MACHINE_CPUARCH} -I$S/cddl/dev/fbt ${CDDL_CFLAGS} -I$S/cddl/compat/opensolaris -I$S/cddl/contrib/opensolaris/uts/common  
 +.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
 +FBT_CFLAGS+=	-I$S/cddl/dev/fbt/x86
 +.endif
 +FBT_C=		${CC} -c ${FBT_CFLAGS}		${WERROR} ${.IMPSRC}
 +
 +.if ${MK_CTF} != "no"
 +NORMAL_CTFCONVERT=	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
 +.elif ${MAKE_VERSION} >= 5201111300
 +NORMAL_CTFCONVERT=
 +.else
 +NORMAL_CTFCONVERT=	@:
 +.endif
 +
 +# Linux Kernel Programming Interface C-flags
 +LINUXKPI_INCLUDES=	-I$S/compat/linuxkpi/common/include \
 +			-I$S/compat/linuxkpi/dummy/include
 +LINUXKPI_C=		${NORMAL_C} ${LINUXKPI_INCLUDES}
 +
 +# Infiniband C flags.  Correct include paths and omit errors that linux
 +# does not honor.
 +OFEDINCLUDES=	-I$S/ofed/include -I$S/ofed/include/uapi ${LINUXKPI_INCLUDES}
 +OFEDNOERR=	-Wno-cast-qual -Wno-pointer-arith
 +OFEDCFLAGS=	${CFLAGS:N-I*} -DCONFIG_INFINIBAND_USER_MEM \
 +		${OFEDINCLUDES} ${CFLAGS:M-I*} ${OFEDNOERR}
 +OFED_C_NOIMP=	${CC} -c -o ${.TARGET} ${OFEDCFLAGS} ${WERROR}
 +OFED_C=		${OFED_C_NOIMP} ${.IMPSRC}
 +
 +# mlxfw C flags.
 +MLXFW_C=	${OFED_C_NOIMP} \
 +		-I${SRCTOP}/sys/contrib/xz-embedded/freebsd \
 +		-I${SRCTOP}/sys/contrib/xz-embedded/linux/lib/xz \
 +		${.IMPSRC}
 +
 +GEN_CFILES= $S/$M/$M/genassym.c ${MFILES:T:S/.m$/.c/}
 +SYSTEM_CFILES= config.c env.c hints.c vnode_if.c
 +SYSTEM_DEP= Makefile ${SYSTEM_OBJS}
 +SYSTEM_OBJS= locore.o ${MDOBJS} ${OBJS}
 +SYSTEM_OBJS+= ${SYSTEM_CFILES:.c=.o}
 +SYSTEM_OBJS+= force-dynamic-hack.pico
 +
 +KEYMAP=kbdcontrol -P ${SRCTOP}/share/vt/keymaps -P ${SRCTOP}/share/syscons/keymaps
 +KEYMAP_FIX=sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /'
 +
 +MD_ROOT_SIZE_CONFIGURED!=	grep MD_ROOT_SIZE opt_md.h || true ; echo
 +.if ${MFS_IMAGE:Uno} != "no"
 +.if empty(MD_ROOT_SIZE_CONFIGURED)
 +SYSTEM_OBJS+= embedfs_${MFS_IMAGE:T:R}.o
 +.endif
 +.endif
 +SYSTEM_LD_BASECMD= \
 +	${LD} -m ${LD_EMULATION} -Bdynamic -T ${LDSCRIPT} ${_LDFLAGS} \
 +	--no-warn-mismatch --warn-common --export-dynamic \
 +	--dynamic-linker /red/herring -X
 +SYSTEM_LD= @${SYSTEM_LD_BASECMD} -o ${.TARGET} ${SYSTEM_OBJS} vers.o
 +SYSTEM_LD_TAIL= @${OBJCOPY} --strip-symbol gcc2_compiled. ${.TARGET} ; \
 +	${SIZE} ${.TARGET} ; chmod 755 ${.TARGET}
 +SYSTEM_DEP+= ${LDSCRIPT}
 +
 +# Calculate path for .m files early, if needed.
 +.if !defined(NO_MODULES) && !defined(__MPATH) && !make(install) && \
 +    (empty(.MAKEFLAGS:M-V) || defined(NO_SKIP_MPATH))
 +__MPATH!=find ${S:tA}/ -name \*_if.m
 +.endif
 +
 +# MKMODULESENV is set here so that port makefiles can augment
 +# them.
 +
 +MKMODULESENV+=	MAKEOBJDIRPREFIX=${.OBJDIR}/modules KMODDIR=${KODIR}
 +MKMODULESENV+=	MACHINE_CPUARCH=${MACHINE_CPUARCH}
 +MKMODULESENV+=	MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE_ARCH}
 +MKMODULESENV+=	MODULES_EXTRA="${MODULES_EXTRA}" WITHOUT_MODULES="${WITHOUT_MODULES}"
 +MKMODULESENV+=	ARCH_FLAGS="${ARCH_FLAGS}"
 +.if (${KERN_IDENT} == LINT)
 +MKMODULESENV+=	ALL_MODULES=LINT
 +.endif
 +.if defined(MODULES_OVERRIDE)
 +MKMODULESENV+=	MODULES_OVERRIDE="${MODULES_OVERRIDE}"
 +.endif
 +.if defined(DEBUG)
 +MKMODULESENV+=	DEBUG_FLAGS="${DEBUG}"
 +.endif
 +.if !defined(NO_MODULES)
 +MKMODULESENV+=	__MPATH="${__MPATH}"
 +.endif
 +
 +# Detect kernel config options that force stack frames to be turned on.
 +DDB_ENABLED!=	grep DDB opt_ddb.h || true ; echo
 +DTR_ENABLED!=	grep KDTRACE_FRAME opt_kdtrace.h || true ; echo
 +HWPMC_ENABLED!=	grep HWPMC opt_hwpmc_hooks.h || true ; echo
diff --cc sys/contrib/openzfs/.github/workflows/codeql.yml
index 000000000000,c8a49a7f00bc..c8a49a7f00bc
mode 000000,100644..100644
--- a/sys/contrib/openzfs/.github/workflows/codeql.yml
+++ b/sys/contrib/openzfs/.github/workflows/codeql.yml
diff --cc sys/contrib/openzfs/cmd/zstream/zstream_recompress.c
index 000000000000,b7370587fc6a..b7370587fc6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/cmd/zstream/zstream_recompress.c
+++ b/sys/contrib/openzfs/cmd/zstream/zstream_recompress.c
diff --cc sys/contrib/openzfs/config/kernel-dentry-alias.m4
index 000000000000,f0ddb8d010b0..f0ddb8d010b0
mode 000000,100644..100644
--- a/sys/contrib/openzfs/config/kernel-dentry-alias.m4
+++ b/sys/contrib/openzfs/config/kernel-dentry-alias.m4
diff --cc sys/contrib/openzfs/config/kernel-iattr-vfsid.m4
index 000000000000,75bc4613b838..75bc4613b838
mode 000000,100644..100644
--- a/sys/contrib/openzfs/config/kernel-iattr-vfsid.m4
+++ b/sys/contrib/openzfs/config/kernel-iattr-vfsid.m4
diff --cc sys/contrib/openzfs/config/kernel-idmap_mnt_api.m4
index 000000000000,47ddc5702fb7..47ddc5702fb7
mode 000000,100644..100644
--- a/sys/contrib/openzfs/config/kernel-idmap_mnt_api.m4
+++ b/sys/contrib/openzfs/config/kernel-idmap_mnt_api.m4
diff --cc sys/contrib/openzfs/contrib/debian/changelog
index 000000000000,6273d603834a..6273d603834a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/changelog
+++ b/sys/contrib/openzfs/contrib/debian/changelog
diff --cc sys/contrib/openzfs/contrib/debian/clean
index 000000000000,3100d693aeba..3100d693aeba
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/clean
+++ b/sys/contrib/openzfs/contrib/debian/clean
diff --cc sys/contrib/openzfs/contrib/debian/control
index 000000000000,a0db4985ed1a..a0db4985ed1a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/control
+++ b/sys/contrib/openzfs/contrib/debian/control
diff --cc sys/contrib/openzfs/contrib/debian/control.modules.in
index 000000000000,70a165266d16..70a165266d16
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/control.modules.in
+++ b/sys/contrib/openzfs/contrib/debian/control.modules.in
diff --cc sys/contrib/openzfs/contrib/debian/copyright
index 000000000000,65c7d209d8eb..65c7d209d8eb
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/copyright
+++ b/sys/contrib/openzfs/contrib/debian/copyright
diff --cc sys/contrib/openzfs/contrib/debian/not-installed
index 000000000000,ad14776f3b7e..ad14776f3b7e
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/not-installed
+++ b/sys/contrib/openzfs/contrib/debian/not-installed
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libnvpair3.docs
index 000000000000,4302f1b2ab6a..4302f1b2ab6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libnvpair3.docs
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libnvpair3.docs
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libnvpair3.install.in
index 000000000000,ed7b541e3607..ed7b541e3607
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libnvpair3.install.in
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libnvpair3.install.in
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.install
index 000000000000,c33123f69a8d..c33123f69a8d
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.install
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.install
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.postinst
index 000000000000,2db86744e4e6..2db86744e4e6
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.postinst
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.postinst
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.prerm
index 000000000000,21e827001c23..21e827001c23
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.prerm
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libpam-zfs.prerm
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libuutil3.docs
index 000000000000,4302f1b2ab6a..4302f1b2ab6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libuutil3.docs
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libuutil3.docs
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libuutil3.install.in
index 000000000000,a197d030d743..a197d030d743
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libuutil3.install.in
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libuutil3.install.in
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzfs-dev.docs
index 000000000000,4302f1b2ab6a..4302f1b2ab6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzfs-dev.docs
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzfs-dev.docs
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzfs-dev.install.in
index 000000000000,eaa8c3925e24..eaa8c3925e24
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzfs-dev.install.in
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzfs-dev.install.in
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzfs4.docs
index 000000000000,4302f1b2ab6a..4302f1b2ab6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzfs4.docs
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzfs4.docs
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzfs4.install.in
index 000000000000,6765aaee59cc..6765aaee59cc
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzfs4.install.in
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzfs4.install.in
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzfsbootenv1.docs
index 000000000000,4302f1b2ab6a..4302f1b2ab6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzfsbootenv1.docs
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzfsbootenv1.docs
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzfsbootenv1.install.in
index 000000000000,49216742433f..49216742433f
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzfsbootenv1.install.in
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzfsbootenv1.install.in
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzpool5.docs
index 000000000000,4302f1b2ab6a..4302f1b2ab6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzpool5.docs
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzpool5.docs
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-libzpool5.install.in
index 000000000000,b9e872df9ba8..b9e872df9ba8
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-libzpool5.install.in
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-libzpool5.install.in
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-python3-pyzfs.install
index 000000000000,4606faae20a7..4606faae20a7
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-python3-pyzfs.install
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-python3-pyzfs.install
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.config
index 000000000000,ad7e160a2b11..ad7e160a2b11
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.config
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.config
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.dkms
index 000000000000,3ac8677b7cde..3ac8677b7cde
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.dkms
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.dkms
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.docs
index 000000000000,4302f1b2ab6a..4302f1b2ab6a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.docs
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.docs
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.install
index 000000000000,b601f22c481a..b601f22c481a
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.install
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.install
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.postinst
index 000000000000,0ecb9674d559..0ecb9674d559
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.postinst
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.postinst
diff --cc sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.prerm
index 000000000000,fea2aee8b902..fea2aee8b902
mode 000000,100644..100644
--- a/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.prerm
+++ b/sys/contrib/openzfs/contrib/debian/openzfs-zfs-dkms.prerm
*** 1292 LINES SKIPPED ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202211162049.2AGKnEwu034988>