1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-01 08:27:59 +00:00
freebsd/config
Rob Norris b409892ae5 Linux 6.10: rework queue limits setup
Linux has started moving to a model where instead of applying block
queue limits through individual modification functions, a complete
limits structure is built up and applied atomically, either when the
block device or open, or some time afterwards. As of 6.10 this
transition appears only partly completed.

This commit matches that model within OpenZFS in a way that should work
for past and future kernels. We set up a queue limits structure with any
limits that have had their modification functions removed. For newer
kernels that can have limits applied at block device open
(HAVE_BLK_ALLOC_DISK_2ARG), we have a conversion function to turn the
OpenZFS queue limits structure into Linux's queue_limits structure,
which can then be passed in. For older kernels, we provide an
application function that just calls the old functions for each limit in
the structure.

Signed-off-by: Rob Norris <robn@despairlabs.com>
Sponsored-by: https://despairlabs.com/sponsor/
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
2024-07-15 17:09:55 -07:00
..
.gitignore
always-arch.m4 Add ARM architecture to OpenZFS buildsystem 2023-03-02 13:51:50 -08:00
always-compiler-options.m4 Fix Clang 15 compilation errors 2022-11-30 13:46:26 -08:00
always-cppcheck.m4 autoconf: use include directives instead of recursing down lib 2022-05-10 10:18:11 -07:00
always-parallel.m4 config: check for parallel(1), use it for cstyle 2022-01-06 12:46:42 -08:00
always-python.m4 Removed Python 2 and Python 3.5- support 2022-01-13 09:51:12 -07:00
always-pyzfs.m4 Python 3.12 deprecated python3-distutils 2024-04-25 13:40:09 -07:00
always-sed.m4
always-shellcheck.m4 Turn checkbashisms into a make target 2021-06-01 11:38:54 -07:00
always-system.m4 autoconf: use include directives instead of recursing down lib 2022-05-10 10:18:11 -07:00
ax_code_coverage.m4 Updated the lz4 decompressor 2022-01-07 10:36:49 -08:00
ax_count_cpus.m4
ax_python_devel.m4 Python 3.12 deprecated python3-distutils 2024-04-25 13:40:09 -07:00
ax_restore_flags.m4
ax_save_flags.m4
config.rpath
CppCheck.am cppcheck: explicitly exclude kernel code from userspace checks 2022-05-10 10:20:55 -07:00
deb.am Fix shebang for helper script of deb-utils 2023-01-05 10:50:00 -08:00
find_system_library.m4 find_system_library: fix var cleanup when library not found 2024-05-01 10:51:14 -07:00
gettext.m4
host-cpu-c-abi.m4
iconv.m4
intlmacosx.m4
kernel-access-ok-type.m4
kernel-acl.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-add-disk.m4 Fix clang 13 compilation errors 2022-06-15 14:20:28 -07:00
kernel-aio-fsync.m4
kernel-automount.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-bdi.m4 Minor fix to configure on s390x 2021-05-27 22:39:53 -07:00
kernel-bio_max_segs.m4
kernel-bio.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-blk-queue.m4 Linux 6.10: rework queue limits setup 2024-07-15 17:09:55 -07:00
kernel-blkdev.m4 vdev_disk: ensure trim errors are returned immediately 2024-04-08 11:50:24 -07:00
kernel-block-device-operations.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-clear-inode.m4
kernel-commit-metadata.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-config-defined.m4 autoconf: Pretend CONFIG_MODULES is always on 2022-04-26 10:47:09 -07:00
kernel-copy-from-user-inatomic.m4 autoconf: Fail when __copy_from_user_inatomic is a non-GPL symbol 2022-05-11 10:32:51 -07:00
kernel-cpu_has_feature.m4 Workaround for Linux PowerPC GPL-only cpu_has_feature() 2023-03-10 09:35:00 -08:00
kernel-current-time.m4 Linux 6.7 compat: simplify current_time() check 2023-12-20 11:47:18 -08:00
kernel-declare-event-class.m4
kernel-dentry-alias.m4 Remove zpl_revalidate: fix snapshot rollback 2022-10-28 09:47:19 -07:00
kernel-dentry-operations.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-dirty-inode.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-discard-granularity.m4
kernel-encode-fh-inode.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-evict-inode.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-fadvise.m4 Add Linux posix_fadvise support 2022-09-08 10:29:41 -07:00
kernel-fallocate.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-file-dentry.m4
kernel-file-inode.m4
kernel-filemap-splice-read.m4 Linux 6.5 compat: Use copy_splice_read instead of filemap_splice_read 2023-08-08 15:42:32 -07:00
kernel-filemap.m4 Linux 5.18+ compat: Detect filemap_range_has_page 2024-03-29 17:11:52 -07:00
kernel-flush_dcache_page.m4 compact: workaround for GPL-only symbols on riscv from Linux 6.2 2023-12-06 12:37:50 -08:00
kernel-fmode-t.m4
kernel-follow-down-one.m4
kernel-fpu.m4 Linux 6.2 compat: add check for kernel_neon_* availability 2024-01-08 16:05:24 -08:00
kernel-fst-mount.m4
kernel-fsync-bdev.m4 Linux 6.6 compat: fsync_bdev() has been removed in favor of sync_blockdev() 2023-09-21 18:38:40 -07:00
kernel-fsync.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-generic_fadvise.m4 Add Linux posix_fadvise support 2022-09-08 10:29:41 -07:00
kernel-generic_fillattr.m4 Linux 6.6 compat: generic_fillattr has a new u32 request_mask added at arg2 2023-09-21 18:38:40 -07:00
kernel-generic_io_acct.m4 linux 6.3 compat: add another bdev_io_acct case 2023-03-27 11:29:19 -07:00
kernel-generic_readlink.m4
kernel-genhd-flags.m4 Linux 5.17 compat: GENHD_FL_EXT_DEVT / GENHD_FL_NO_PART_SCAN 2022-04-19 10:38:04 -07:00
kernel-get-disk-ro.m4 libtpool: -Wno-clobbered 2022-02-18 09:34:25 -08:00
kernel-get-link.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-global_page_state.m4 egrep -> grep -E 2022-04-01 17:58:07 -07:00
kernel-group-info.m4 Strengthen Linux kernel capabilities detection 2022-04-21 09:37:11 -07:00
kernel-hotplug.m4
kernel-iattr-vfsid.m4 Support idmapped mount in user namespace 2022-11-08 10:28:56 -08:00
kernel-idmap_mnt_api.m4 Linux 6.8 compat: handle mnt_idmap user_namespace change 2024-01-29 11:36:07 -08:00
kernel-in-compat-syscall.m4
kernel-inode-create.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-getattr.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-lock.m4
kernel-inode-lookup.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-permission.m4 Linux 6.8 compat: fix inode permission tests 2024-01-29 11:36:07 -08:00
kernel-inode-set-flags.m4
kernel-inode-set-iversion.m4
kernel-inode-setattr.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-times.m4 Linux 6.7 compat: use inode atime/mtime accessors 2023-12-20 11:47:40 -08:00
kernel-insert-inode-locked.m4
kernel-is_owner_or_cap.m4 Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
kernel-kmap-atomic-args.m4
kernel-kmem-cache.m4
kernel-kmem.m4 Linux 5.16 compat: Check slab.h for kvmalloc 2022-01-24 12:57:50 -08:00
kernel-kstrtoul.m4
kernel-kthread.m4 Linux 5.17 compat: dequeue_signal() takes a 4th argument 2022-01-25 12:52:51 -08:00
kernel-ktime.m4
kernel-kuid-helpers.m4
kernel-kuidgid.m4
kernel-lseek-execute.m4
kernel-make-request-fn.m4 Linux 6.9 compat: blk_alloc_disk() now takes two args 2024-04-03 15:29:39 -07:00
kernel-misc-minor.m4
kernel-mkdir.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-mknod.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-mm-page-size.m4 linux 5.4 compat: page_size() 2024-03-25 16:48:15 -07:00
kernel-objtool.m4
kernel-pagemap-folio_wait_bit.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-pde-data.m4 Linux 5.17 compat: PDE_DATA() renamed to pde_data() 2022-01-25 12:53:00 -08:00
kernel-percpu.m4 Introduce write-mostly sums 2021-05-27 14:27:29 -06:00
kernel-proc-operations.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-put-link.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-readpages.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-reclaim_state.m4 Linux 6.4 compat: reclaimed_slab renamed to reclaimed 2023-05-24 12:23:42 -07:00
kernel-register_sysctl_table.m4 Linux 6.5 compat: register_sysctl_table removed 2023-08-02 14:05:46 -07:00
kernel-rename.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-revalidate-disk-size.m4 Linux 5.18 compat: replace genhd.h with blkdev.h includes 2022-03-28 09:52:55 -07:00
kernel-rw.m4
kernel-rwsem.m4
kernel-sched.m4
kernel-security-inode-init.m4
kernel-set-nlink.m4
kernel-setattr-prepare.m4 Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
kernel-sget-args.m4
kernel-show-options.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-shrink.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-siginfo.m4 Add SIGSTOP and SIGTSTP handling to issig 2021-04-15 13:34:35 -07:00
kernel-signal-stop.m4 Add SIGSTOP and SIGTSTP handling to issig 2021-04-15 13:34:35 -07:00
kernel-special-state.m4 Add SIGSTOP and SIGTSTP handling to issig 2021-04-15 13:34:35 -07:00
kernel-stdarg.m4 Linux 5.15 compat: standalone <linux/stdarg.h> 2021-09-08 12:59:43 -07:00
kernel-strlcpy.m4 Linux 6.8 compat: implement strlcpy fallback 2024-01-29 11:36:07 -08:00
kernel-super-userns.m4
kernel-symlink.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-sysfs.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-timer.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-tmpfile.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-totalhigh_pages.m4
kernel-totalram-pages-func.m4
kernel-truncate-setsize.m4
kernel-types.m4 Linux 6.7 compat: detect if kernel defines intptr_t 2024-05-24 18:54:24 -07:00
kernel-user-ns-inum.m4 Add Linux namespace delegation support 2022-06-10 09:51:46 -07:00
kernel-userns-capabilities.m4
kernel-usleep_range.m4
kernel-vfs-direct_IO.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-vfs-extended-file_range.m4 linux: implement filesystem-side copy/clone functions for EL7 2023-07-24 16:37:04 -07:00
kernel-vfs-file_range.m4 Linux 6.8 compat: use splice_copy_file_range() for fallback 2024-03-20 16:46:15 -07:00
kernel-vfs-filemap_dirty_folio.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-vfs-fsync.m4
kernel-vfs-getattr.m4
kernel-vfs-iov_iter.m4 Linux 6.5 compat: replace generic_file_splice_read with filemap_splice_read 2023-08-07 15:47:46 -07:00
kernel-vfs-iterate.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-vfs-read_folio.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-vfs-rw-iterate.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-vfs-set_page_dirty.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-wait.m4
kernel-writepage_t.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-xattr-handler.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-zero_page.m4 Adding ZERO_PAGE detection 2022-03-14 12:37:39 -07:00
kernel-zlib.m4
kernel.m4 Linux 6.7 compat: detect if kernel defines intptr_t 2024-05-24 18:54:24 -07:00
lib-ld.m4
lib-link.m4
lib-prefix.m4
mount-helper.m4
nls.m4
pkg.m4
po.m4
progtest.m4
rpm.am Make sure all necessary RPM path macros are defined 2024-01-16 13:32:59 -08:00
Rules.am config: use -Wno-format-truncation globally 2024-02-26 12:23:55 -08:00
Shellcheck.am shellcheck: disable "unreachable command" check [SC2317] 2023-07-21 11:53:06 -07:00
Substfiles.am config/Substfiles.am: restrict to the dedicated list. 2024-04-09 16:34:58 -07:00
tgz.am
toolchain-simd.m4 Linux 5.16 compat: don't use XSTATE_XSAVE to save FPU state 2022-02-09 12:50:10 -08:00
user-aio.h.m4 config: user: check for <aio.h> 2022-03-28 10:24:22 -07:00
user-backtrace.m4 libspl/assert: dump backtrace in assert 2024-05-01 10:52:00 -07:00
user-clock_gettime.m4
user-dracut.m4
user-gettext.m4
user-libaio.m4 config: user: check for <aio.h> 2022-03-28 10:24:22 -07:00
user-libatomic.m4 config/libatomic: require -latomic iff atomic.c doesn't link w/o it 2021-07-13 13:50:48 -07:00
user-libblkid.m4
user-libcrypto.m4
user-libexec.m4
user-libfetch.m4 libfetch: unquote @LIBFETCH_SONAME@ subst 2022-01-06 11:26:40 -08:00
user-libtirpc.m4
user-libudev.m4
user-libunwind.m4 libspl/assert: use libunwind for backtrace when available 2024-05-01 10:52:05 -07:00
user-libuuid.m4
user-makedev.m4
user-pam.m4
user-runstatedir.m4
user-systemd.m4 autoconf: use include directives instead of recursing down etc 2022-05-10 10:19:58 -07:00
user-sysvinit.m4 autoconf: use include directives instead of recursing down etc 2022-05-10 10:19:58 -07:00
user-udev.m4
user-zlib.m4
user.m4 libspl/assert: use libunwind for backtrace when available 2024-05-01 10:52:05 -07:00
zfs-build.m4 Add building support for Artix Linux (#16265) 2024-07-15 16:58:00 -07:00
zfs-meta.m4 Remove basename(1). Clean up/shorten some coreutils pipelines 2021-11-11 13:27:37 -07:00