mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-15 09:55:36 +00:00
Btrfs: avoid allocation clusters that are too spread out
In SSD mode for data, and all the time for metadata the allocator will try to find a cluster of nearby blocks for allocations. This commit adds extra checks to make sure that each free block in the cluster is close to the last one. Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
parent
3b30c22f64
commit
c604480171
@ -645,7 +645,8 @@ again:
|
||||
* we haven't filled the empty size and the window is
|
||||
* very large. reset and try again
|
||||
*/
|
||||
if (next->offset - window_start > (bytes + empty_size) * 2) {
|
||||
if (next->offset - (last->offset + last->bytes) > 128 * 1024 ||
|
||||
next->offset - window_start > (bytes + empty_size) * 2) {
|
||||
entry = next;
|
||||
window_start = entry->offset;
|
||||
window_free = entry->bytes;
|
||||
|
Loading…
x
Reference in New Issue
Block a user