]> git.proxmox.com Git - mirror_zfs.git/commitdiff
Tweak rebuild in-flight hard limit
authorBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 29 Sep 2023 15:21:25 +0000 (08:21 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 3 Oct 2023 16:06:07 +0000 (09:06 -0700)
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 <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: Tony Hutter <hutter2@llnl.gov>
Closes #15324

module/zfs/vdev_rebuild.c

index 75c3900cbb0ca65ac8b7d0cf01df70d6a3353e49..6503390f79732f4c9d856755e7645c5a392a6d19 100644 (file)
@@ -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));