diff options
author | Josef Bacik <jbacik@fb.com> | 2015-09-29 18:40:47 +0300 |
---|---|---|
committer | Chris Mason <clm@fb.com> | 2015-10-22 04:55:19 +0300 |
commit | 4f4db2174d8d6cdc093cbb79d17fbfe0f4d9fbde (patch) | |
tree | ae850a309ddfe971d0e862aafbfb951163b5a842 /fs/btrfs/transaction.h | |
parent | 36af4e0737f6aa494e43497a5a34588a1d5cb12f (diff) | |
download | linux-4f4db2174d8d6cdc093cbb79d17fbfe0f4d9fbde.tar.xz |
Btrfs: keep track of max_extent_size per space_info
When we are heavily fragmented we can induce a lot of latency trying to make an
allocation happen that is simply not going to happen. Thankfully we keep track
of our max_extent_size when going through the allocator, so if we get to the
point where we are exiting find_free_extent with ENOSPC then set our
space_info->max_extent_size so we can keep future allocations from having to pay
this cost. We reset the max_extent_size whenever we release pinned bytes back
into this space info so we can redo all the work. Thanks,
Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs/btrfs/transaction.h')
0 files changed, 0 insertions, 0 deletions