freebsd-src/config
Umer Saleem 06e25f9c4b
Improve performance for zpool trim on linux
On Linux, ZFS uses blkdev_issue_discard in vdev_disk_io_trim to issue
trim command which is synchronous.

This commit updates vdev_disk_io_trim to use __blkdev_issue_discard,
which is asynchronous. Unfortunately there isn't any asynchronous
version for blkdev_issue_secure_erase, so performance of secure trim
will still suffer.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: Umer Saleem <usaleem@ixsystems.com>
Closes #15843
2024-02-02 11:51:51 -08: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
always-parallel.m4
always-python.m4
always-pyzfs.m4 Make autodetection disable pyzfs for kernel/srpm configurations 2022-11-16 09:27:53 -08:00
always-sed.m4
always-shellcheck.m4
always-system.m4
ax_code_coverage.m4
ax_count_cpus.m4
ax_python_devel.m4 removal of LegacyVersion broke ax_python_dev.m4 2023-01-05 11:04:24 -08:00
ax_restore_flags.m4
ax_save_flags.m4
config.rpath
CppCheck.am
deb.am Fix shebang for helper script of deb-utils 2023-01-05 10:50:00 -08:00
find_system_library.m4
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
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
kernel-bio.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-bio_max_segs.m4
kernel-blk-queue.m4 Accommodate debug-kernel stack frame size 2023-03-01 14:40:45 -08:00
kernel-blkdev.m4 Improve performance for zpool trim on linux 2024-02-02 11:51:51 -08: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
kernel-copy-from-user-inatomic.m4
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
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: use filemap_range_has_page() 2023-02-14 11:04:34 -08: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
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
kernel-get-disk-ro.m4
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
kernel-group-info.m4
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
kernel-kstrtoul.m4
kernel-kthread.m4
kernel-ktime.m4
kernel-kuid-helpers.m4
kernel-kuidgid.m4
kernel-lseek-execute.m4
kernel-make-request-fn.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08: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-objtool.m4
kernel-pagemap-folio_wait_bit.m4
kernel-pde-data.m4
kernel-percpu.m4
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
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
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
kernel-signal-stop.m4
kernel-special-state.m4
kernel-stdarg.m4
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
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-user-ns-inum.m4
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: implement filesystem-side copy/clone functions 2023-07-24 16:36:38 -07:00
kernel-vfs-filemap_dirty_folio.m4
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
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
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
kernel-zlib.m4
kernel.m4 Linux 6.8 compat: handle mnt_idmap user_namespace change 2024-01-29 11:36:07 -08: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 Switch to CodeQL to detect prohibited function use 2024-01-26 14:11:33 -08:00
Shellcheck.am shellcheck: disable "unreachable command" check [SC2317] 2023-07-21 11:53:06 -07:00
Substfiles.am
tgz.am
toolchain-simd.m4
user-aio.h.m4
user-clock_gettime.m4
user-dracut.m4
user-gettext.m4
user-libaio.m4
user-libatomic.m4
user-libblkid.m4
user-libcrypto.m4
user-libexec.m4
user-libfetch.m4
user-libtirpc.m4
user-libudev.m4
user-libuuid.m4
user-makedev.m4
user-pam.m4
user-runstatedir.m4
user-systemd.m4
user-sysvinit.m4
user-udev.m4
user-zlib.m4
user.m4 Only provide execvpe(3) when needed 2023-11-30 16:04:18 -08:00
zfs-build.m4 config/zfs-build.m4: add Gentoo's bash-completion path 2023-10-09 12:50:06 -07:00
zfs-meta.m4