aboutsummaryrefslogtreecommitdiffstats
path: root/module/zfs
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2023-09-29 08:21:25 -0700
committerGitHub <[email protected]>2023-09-29 08:21:25 -0700
commitf9c39dc862768df4891a4437dcba5dc26d3b1e5f (patch)
treee29d21405322bdd48430050a282f774d32ab18c6 /module/zfs
parentba769ea3515f64cf18b587837bc0801ccefacb69 (diff)
Tweak rebuild in-flight hard limit
Vendor testing shows we should be able to get a little more performance if we further relax the hard limit which we're hitting. Authored-by: Brian Behlendorf <[email protected]> Reviewed-by: Alexander Motin <[email protected]> Signed-off-by: Tony Hutter <[email protected]> Closes #15324
Diffstat (limited to 'module/zfs')
-rw-r--r--module/zfs/vdev_rebuild.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/module/zfs/vdev_rebuild.c b/module/zfs/vdev_rebuild.c
index 75c3900cb..6503390f7 100644
--- a/module/zfs/vdev_rebuild.c
+++ b/module/zfs/vdev_rebuild.c
@@ -807,12 +807,12 @@ vdev_rebuild_thread(void *arg)
/*
* Calculate the max number of in-flight bytes for top-level
- * vdev scanning operations (minimum 1MB, maximum 1/4 of
+ * vdev scanning operations (minimum 1MB, maximum 1/2 of
* arc_c_max shared by all top-level vdevs). Limits for the
* issuing phase are done per top-level vdev and are handled
* separately.
*/
- uint64_t limit = (arc_c_max / 4) / MAX(rvd->vdev_children, 1);
+ uint64_t limit = (arc_c_max / 2) / MAX(rvd->vdev_children, 1);
vr->vr_bytes_inflight_max = MIN(limit, MAX(1ULL << 20,
zfs_rebuild_vdev_limit * vd->vdev_children));