git: b2526e8bfe51 - main - zfs: merge openzfs/zfs@66b81b349

From: Martin Matuska <mm_at_FreeBSD.org>
Date: Sun, 08 Oct 2023 07:54:41 UTC
The branch main has been updated by mm:

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

commit b2526e8bfe513b7d11f4aa0b7a581a17be74374e
Merge: 2821a7498f65 66b81b349749
Author:     Martin Matuska <mm@FreeBSD.org>
AuthorDate: 2023-10-08 07:43:15 +0000
Commit:     Martin Matuska <mm@FreeBSD.org>
CommitDate: 2023-10-08 07:43:15 +0000

    zfs: merge openzfs/zfs@66b81b349
    
    Notable upstream pull request merges:
     #15290 54b1b1d89 import: require force when cachefile hostid doesn't
                      match on-disk
     #15319 342357cd9 Reduce number of metaslab preload taskq threads
     #15340 2a6c62109 ARC: Remove b_cv from struct l1arc_buf_hdr
     #15347 75a2eb7fa ARC: Drop different size headers for crypto
     #15350 96b9cf42e ARC: Remove b_bufcnt/b_ebufcnt from ARC headers
     #15353 66b81b349 ZIL: Reduce maximum size of WR_COPIED to 7.5K
     #15362 5b8688e62 zfsconcepts: add description of block cloning
    
    Obtained from:  OpenZFS
    OpenZFS commit: 66b81b349749bc1ba11fa277bee860be03315429

 sys/contrib/openzfs/.cirrus.yml                    |  21 ++
 sys/contrib/openzfs/.gitignore                     |   2 +-
 sys/contrib/openzfs/cmd/zpool/zpool_main.c         |  23 +-
 sys/contrib/openzfs/config/zfs-build.m4            |   3 +
 .../openzfs/include/os/linux/zfs/sys/trace_arc.h   |  12 +-
 sys/contrib/openzfs/include/sys/arc_impl.h         |  10 +-
 sys/contrib/openzfs/include/sys/metaslab_impl.h    |   1 -
 sys/contrib/openzfs/include/sys/spa_impl.h         |   4 +-
 sys/contrib/openzfs/man/man4/zfs.4                 |  11 +
 sys/contrib/openzfs/man/man7/zfsconcepts.7         |  40 ++-
 .../openzfs/module/os/freebsd/zfs/sysctl_os.c      |  22 --
 sys/contrib/openzfs/module/zfs/arc.c               | 322 +++++----------------
 sys/contrib/openzfs/module/zfs/metaslab.c          |  23 +-
 sys/contrib/openzfs/module/zfs/spa.c               |  46 ++-
 sys/contrib/openzfs/module/zfs/zil.c               |  17 +-
 sys/contrib/openzfs/rpm/generic/zfs.spec.in        |   2 +-
 sys/contrib/openzfs/tests/runfiles/common.run      |   4 +
 .../openzfs/tests/zfs-tests/tests/Makefile.am      |   4 +
 ...ock_cloning_copyfilerange_fallback_same_txg.ksh |   2 +
 .../cli_root/zpool_import/zpool_import.cfg         |   5 +
 .../cli_root/zpool_import/zpool_import.kshlib      |   1 +
 .../zpool_import/zpool_import_hostid_changed.ksh   |  59 ++++
 .../zpool_import_hostid_changed_cachefile.ksh      |  65 +++++
 ...ort_hostid_changed_cachefile_unclean_export.ksh |  75 +++++
 .../zpool_import_hostid_changed_unclean_export.ksh |  70 +++++
 25 files changed, 512 insertions(+), 332 deletions(-)

diff --cc sys/contrib/openzfs/.cirrus.yml
index 000000000000,000000000000..18b292289e20
new file mode 100644
--- /dev/null
+++ b/sys/contrib/openzfs/.cirrus.yml
@@@ -1,0 -1,0 +1,21 @@@
++env:
++  CIRRUS_CLONE_DEPTH: 1
++  ARCH: amd64
++
++build_task:
++  matrix:
++    freebsd_instance:
++      image_family: freebsd-12-4
++    freebsd_instance:
++      image_family: freebsd-13-2
++    freebsd_instance:
++      image_family: freebsd-14-0-snap
++  prepare_script:
++    - pkg install -y autoconf automake libtool gettext-runtime gmake ksh93 py39-packaging py39-cffi py39-sysctl
++  configure_script:
++    - env MAKE=gmake ./autogen.sh
++    - env MAKE=gmake ./configure --with-config="user" --with-python=3.9
++  build_script:
++    - gmake -j `sysctl -n kern.smp.cpus`
++  install_script:
++    - gmake install
diff --cc sys/contrib/openzfs/.gitignore
index 8d91dd9466c5,000000000000..1ef47d921c28
mode 100644,000000..100644
--- a/sys/contrib/openzfs/.gitignore
+++ b/sys/contrib/openzfs/.gitignore
@@@ -1,88 -1,0 +1,88 @@@
 +#
 +# This is the top-level .gitignore file:
 +# ignore everything except a list of allowed files.
 +#
 +# This is not the place for entries that are specific to
 +# a subdirectory.  Instead add those files to the
 +# .gitignore file in that subdirectory.
 +#
 +# N.B.
 +# Please use 'git ls-files -i --exclude-standard'
 +# command after changing this file, to see if there are
 +# any tracked files which get ignored after the change.
 +
 +*
 +
 +!.github
 +!cmd
 +!config
 +!contrib
 +!etc
 +!include
 +!lib
 +!man
 +!module
 +!rpm
 +!scripts
 +!tests
 +!udev
 +
 +!.github/**
 +!cmd/**
 +!config/**
 +!contrib/**
 +!etc/**
 +!include/**
 +!lib/**
 +!man/**
 +!module/**
 +!rpm/**
 +!scripts/**
 +!tests/**
 +!udev/**
 +
 +!.editorconfig
++!.cirrus.yml
 +!.gitignore
 +!.gitmodules
 +!AUTHORS
 +!autogen.sh
 +!CODE_OF_CONDUCT.md
 +!configure.ac
 +!copy-builtin
 +!COPYRIGHT
 +!LICENSE
 +!Makefile.am
 +!META
 +!NEWS
 +!NOTICE
 +!README.md
 +!RELEASES.md
 +!TEST
 +!zfs.release.in
 +
- 
 +#
 +# Normal rules
 +#
 +*.[oa]
 +*.o.ur-safe
 +*.lo
 +*.la
 +*.mod.c
 +*~
 +*.swp
 +*.gcno
 +*.gcda
 +*.pyc
 +*.pyo
 +.deps
 +.libs
 +.dirstamp
 +.DS_Store
 +modules.order
 +Makefile
 +Makefile.in
 +*.patch
 +*.orig
 +*.tmp
 +*.log
diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed.ksh
index 000000000000,bc82b7cc1ee8..bc82b7cc1ee8
mode 000000,100755..100755
--- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed.ksh
+++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed.ksh
diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile.ksh
index 000000000000,07c43482d68f..07c43482d68f
mode 000000,100755..100755
--- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile.ksh
+++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile.ksh
diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile_unclean_export.ksh
index 000000000000,dcb1ac1ab69f..dcb1ac1ab69f
mode 000000,100755..100755
--- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile_unclean_export.ksh
+++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile_unclean_export.ksh
diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_unclean_export.ksh
index 000000000000,ad8cca642dbc..ad8cca642dbc
mode 000000,100755..100755
--- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_unclean_export.ksh
+++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_unclean_export.ksh