ahrens commented on this pull request.
> @@ -1039,6 +1039,13 @@ metaslab_group_allocatable(metaslab_group_t *mg, > metaslab_group_t *rotor, if (mg->mg_no_free_space) return (B_FALSE); + /* + * Relax allocation throttling for ditto blocks. Due to + * random imbalances in allocation it tends to push copies + * to one vdev, that looks a bit better at the moment. + */ + qmax = qmax * (4 + d) / 4; I found this math a little hard to follow. Maybe this would be more clear: ``` // increase qmax by 1/4 for the 2nd DVA, and by 1/2 for the 3rd dva qmax += qmax * d / 4; ``` How did you decide on 1/4 (as opposed to 1/8, or 10, or unlimited)? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/openzfs/openzfs/pull/688#pullrequestreview-150579732 ------------------------------------------ openzfs: openzfs-developer Permalink: https://openzfs.topicbox.com/groups/developer/T5b2a8092d211827d-Me4ce7dbc9e33148fafeac87a Delivery options: https://openzfs.topicbox.com/groups/developer/subscription