mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-13 17:28:56 +00:00
Btrfs: allocator tweaks
Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
parent
cd1bc4653d
commit
28b8bb9e00
@ -94,9 +94,6 @@ struct buffer_head *btrfs_find_tree_block(struct btrfs_root *root, u64 blocknr)
|
||||
} while (bh != head);
|
||||
out_unlock:
|
||||
unlock_page(page);
|
||||
if (ret) {
|
||||
touch_buffer(ret);
|
||||
}
|
||||
page_cache_release(page);
|
||||
return ret;
|
||||
}
|
||||
|
@ -311,7 +311,10 @@ int btrfs_finish_extent_commit(struct btrfs_trans_handle *trans, struct
|
||||
clear_radix_bit(pinned_radix, gang[i]);
|
||||
}
|
||||
}
|
||||
root->fs_info->block_group_cache = NULL;
|
||||
if (root->fs_info->block_group_cache) {
|
||||
root->fs_info->block_group_cache->last_alloc =
|
||||
root->fs_info->block_group_cache->first_free;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -578,7 +581,7 @@ check_failed:
|
||||
if (last_block < search_start)
|
||||
last_block = search_start;
|
||||
hole_size = key.objectid - last_block;
|
||||
if (hole_size > num_blocks) {
|
||||
if (hole_size >= num_blocks) {
|
||||
ins->objectid = last_block;
|
||||
ins->offset = hole_size;
|
||||
goto check_pending;
|
||||
|
Loading…
x
Reference in New Issue
Block a user