diff options
author | Chris Mason <chris.mason@oracle.com> | 2009-05-18 10:41:58 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2009-06-10 11:29:47 -0400 |
commit | cfbb9308463f6dad1334884db046ccf0f1a77918 (patch) | |
tree | 12faa0d785c3e3adec21770db7112514d834f77b | |
parent | b36124210248706186a02093427bdff4b3f548e8 (diff) |
Btrfs: balance btree more often
With the new back reference code, the cost of a balance has gone down
in terms of the number of back reference updates done. This commit
makes us more aggressively balance leaves and nodes as they become
less full.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
-rw-r--r-- | fs/btrfs/ctree.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c index 2f633e751198..60a45f3a4e91 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c | |||
@@ -1651,7 +1651,7 @@ setup_nodes_for_search(struct btrfs_trans_handle *trans, | |||
1651 | } | 1651 | } |
1652 | b = p->nodes[level]; | 1652 | b = p->nodes[level]; |
1653 | } else if (ins_len < 0 && btrfs_header_nritems(b) < | 1653 | } else if (ins_len < 0 && btrfs_header_nritems(b) < |
1654 | BTRFS_NODEPTRS_PER_BLOCK(root) / 4) { | 1654 | BTRFS_NODEPTRS_PER_BLOCK(root) / 2) { |
1655 | int sret; | 1655 | int sret; |
1656 | 1656 | ||
1657 | sret = reada_for_balance(root, p, level); | 1657 | sret = reada_for_balance(root, p, level); |
@@ -3807,7 +3807,7 @@ int btrfs_del_items(struct btrfs_trans_handle *trans, struct btrfs_root *root, | |||
3807 | } | 3807 | } |
3808 | 3808 | ||
3809 | /* delete the leaf if it is mostly empty */ | 3809 | /* delete the leaf if it is mostly empty */ |
3810 | if (used < BTRFS_LEAF_DATA_SIZE(root) / 4) { | 3810 | if (used < BTRFS_LEAF_DATA_SIZE(root) / 2) { |
3811 | /* push_leaf_left fixes the path. | 3811 | /* push_leaf_left fixes the path. |
3812 | * make sure the path still points to our leaf | 3812 | * make sure the path still points to our leaf |
3813 | * for possible call to del_ptr below | 3813 | * for possible call to del_ptr below |