aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent-tree.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs/extent-tree.c')
-rw-r--r--fs/btrfs/extent-tree.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 26b8d3406491..f7d76d34fc37 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -1018,7 +1018,7 @@ static int find_free_extent(struct btrfs_trans_handle *trans, struct btrfs_root
1018 if (num_blocks == 0) { 1018 if (num_blocks == 0) {
1019 fill_prealloc = 1; 1019 fill_prealloc = 1;
1020 num_blocks = 1; 1020 num_blocks = 1;
1021 total_needed = (min(level + 1, BTRFS_MAX_LEVEL) + 2) * 3; 1021 total_needed = (min(level + 1, BTRFS_MAX_LEVEL)) * 6;
1022 } 1022 }
1023 if (fill_prealloc) { 1023 if (fill_prealloc) {
1024 u64 first; 1024 u64 first;
@@ -1300,6 +1300,8 @@ int btrfs_alloc_extent(struct btrfs_trans_handle *trans,
1300 ins->objectid; 1300 ins->objectid;
1301 ret = update_block_group(trans, root, 1301 ret = update_block_group(trans, root,
1302 ins->objectid, ins->offset, 1, 0, 0); 1302 ins->objectid, ins->offset, 1, 0, 0);
1303 WARN_ON(info->extent_tree_insert_nr >
1304 ARRAY_SIZE(info->extent_tree_insert));
1303 BUG_ON(ret); 1305 BUG_ON(ret);
1304 return 0; 1306 return 0;
1305 } 1307 }
@@ -1628,7 +1630,7 @@ int btrfs_drop_snapshot(struct btrfs_trans_handle *trans, struct btrfs_root
1628 if (wret < 0) 1630 if (wret < 0)
1629 ret = wret; 1631 ret = wret;
1630 num_walks++; 1632 num_walks++;
1631 if (num_walks > 10) { 1633 if (num_walks > 2) {
1632 ret = -EAGAIN; 1634 ret = -EAGAIN;
1633 get_bh(root->node); 1635 get_bh(root->node);
1634 break; 1636 break;