zfs-lts: disable zfs_dmu_offset_next_sync by default
This commit is contained in:
parent
0a41329e62
commit
4520fe43b2
2 changed files with 46 additions and 1 deletions
|
@ -0,0 +1,45 @@
|
||||||
|
From 2b266bd36980caefe353411bd56b2487c44aeb6e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Sam James <sam@gentoo.org>
|
||||||
|
Date: Fri, 24 Nov 2023 21:38:06 +0000
|
||||||
|
Subject: [PATCH] Disable zfs_dmu_offset_next_sync tunable by default
|
||||||
|
|
||||||
|
As a mitigation until more is understood and fixes are tested & reviewed, change
|
||||||
|
the default of zfs_dmu_offset_next_sync from 1 to 0, as it was before
|
||||||
|
05b3eb6d232009db247882a39d518e7282630753.
|
||||||
|
|
||||||
|
There are no reported cases of The Bug being hit with zfs_dmu_offset_next_sync=1:
|
||||||
|
that does not mean this is a cure or a real fix, but it _appears_ to be at least
|
||||||
|
effective in reducing the chances of it happening. By itself, it's a safe change
|
||||||
|
anyway, so it feels worth us doing while we wait.
|
||||||
|
|
||||||
|
Bug: https://github.com/openzfs/zfs/issues/11900
|
||||||
|
Bug: https://github.com/openzfs/zfs/issues/15526
|
||||||
|
Bug: https://bugs.gentoo.org/917224
|
||||||
|
Signed-off-by: Sam James <sam@gentoo.org>
|
||||||
|
---
|
||||||
|
diff --git a/man/man4/zfs.4 b/man/man4/zfs.4
|
||||||
|
index 0c60a9c8e..8c14e670b 100644
|
||||||
|
--- a/man/man4/zfs.4
|
||||||
|
+++ b/man/man4/zfs.4
|
||||||
|
@@ -1646,7 +1646,7 @@ Allow no-operation writes.
|
||||||
|
The occurrence of nopwrites will further depend on other pool properties
|
||||||
|
.Pq i.a. the checksumming and compression algorithms .
|
||||||
|
.
|
||||||
|
-.It Sy zfs_dmu_offset_next_sync Ns = Ns Sy 1 Ns | Ns 0 Pq int
|
||||||
|
+.It Sy zfs_dmu_offset_next_sync Ns = Ns Sy 0 Ns | Ns 1 Pq int
|
||||||
|
Enable forcing TXG sync to find holes.
|
||||||
|
When enabled forces ZFS to sync data when
|
||||||
|
.Sy SEEK_HOLE No or Sy SEEK_DATA
|
||||||
|
diff --git a/module/zfs/dmu.c b/module/zfs/dmu.c
|
||||||
|
index 96e98a42e..c1fd57c9e 100644
|
||||||
|
--- a/module/zfs/dmu.c
|
||||||
|
+++ b/module/zfs/dmu.c
|
||||||
|
@@ -80,7 +80,7 @@ unsigned long zfs_per_txg_dirty_frees_percent = 30;
|
||||||
|
* Disabling this option will result in holes never being reported in dirty
|
||||||
|
* files which is always safe.
|
||||||
|
*/
|
||||||
|
-int zfs_dmu_offset_next_sync = 1;
|
||||||
|
+int zfs_dmu_offset_next_sync = 0;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Limit the amount we can prefetch with one call to this amount. This
|
|
@ -1,7 +1,7 @@
|
||||||
# Template file for 'zfs-lts'
|
# Template file for 'zfs-lts'
|
||||||
pkgname=zfs-lts
|
pkgname=zfs-lts
|
||||||
version=2.1.13
|
version=2.1.13
|
||||||
revision=1
|
revision=2
|
||||||
build_style=gnu-configure
|
build_style=gnu-configure
|
||||||
configure_args="--with-config=user --with-mounthelperdir=/usr/bin
|
configure_args="--with-config=user --with-mounthelperdir=/usr/bin
|
||||||
--with-udevdir=/usr/lib/udev --with-udevruledir=/usr/lib/udev/rules.d
|
--with-udevdir=/usr/lib/udev --with-udevruledir=/usr/lib/udev/rules.d
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue