On Wed 21-09-22 22:52:34, Theodore Ts'o wrote:
On Thu, 8 Sep 2022 11:21:24 +0200, Jan Kara wrote:
One of the side-effects of mb_optimize_scan was that the optimized functions to select next group to try were called even before we tried the goal group. As a result we no longer allocate files close to corresponding inodes as well as we don't try to expand currently allocated extent in the same group. This results in reaim regression with workfile.disk workload of upto 8% with many clients on my test machine:
[...]
Applied, thanks!
[1/5] ext4: Make mballoc try target group first even with mb_optimize_scan commit: 4fca50d440cc5d4dc570ad5484cc0b70b381bc2a [2/5] ext4: Avoid unnecessary spreading of allocations among groups commit: 1940265ede6683f6317cba0d428ce6505eaca944 [3/5] ext4: Make directory inode spreading reflect flexbg size commit: 613c5a85898d1cd44e68f28d65eccf64a8ace9cf [4/5] ext4: Use locality group preallocation for small closed files commit: a9f2a2931d0e197ab28c6007966053fdababd53f [5/5] ext4: Use buckets for cr 1 block scan instead of rbtree commit: 83e80a6e3543f37f74c8e48a5f305b054b65ce2a
Thanks Ted! I just have locally a small fixup to the series that was reported by Smatch. It is attached, either fold it into the last patch or just merge it as a separate patch. Thanks!
Honza