]> git.proxmox.com Git - mirror_zfs.git/commit
Add prefetch property
authorBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 24 Oct 2023 18:00:07 +0000 (11:00 -0700)
committerGitHub <noreply@github.com>
Tue, 24 Oct 2023 18:00:07 +0000 (11:00 -0700)
commit07345ac2524754cfd3e020298d16d9fb341f028b
treedf8b8d0ac79b33fd597b637842ade5581af3f461
parente57909265b4352832d69f5107bac7e56d6a8fbd2
Add prefetch property

ZFS prefetch is currently governed by the zfs_prefetch_disable
tunable. However, this is a module-wide settings - if a specific
dataset benefits from prefetch, while others have issue with it,
an optimal solution does not exists.

This commit introduce the "prefetch" tri-state property, which enable
granular control (at dataset/volume level) for prefetching.

This patch does not remove the zfs_prefetch_disable, which remains
a system-wide switch for enable/disable prefetch. However, to avoid
duplication, it would be preferable to deprecate and then remove
the module tunable.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Ameer Hamza <ahamza@ixsystems.com>
Signed-off-by: Gionatan Danti <g.danti@assyoma.it>
Co-authored-by: Gionatan Danti <g.danti@assyoma.it>
Closes #15237
Closes #15436
include/sys/dmu_objset.h
include/sys/fs/zfs.h
lib/libzfs/libzfs.abi
man/man7/zfsprops.7
module/zcommon/zfs_prop.c
module/zfs/dmu_objset.c
module/zfs/dmu_zfetch.c