diff options
author | Chris Mason <chris.mason@oracle.com> | 2008-04-16 12:59:22 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2008-09-25 11:04:01 -0400 |
commit | 699122f55904bec252ea4f8a64228ce98e3d9fda (patch) | |
tree | 3a3fc6f6026e6e40a1dd9639bc1090b1391daa29 /fs/btrfs/ctree.c | |
parent | e015640f9c4fa2417dcc3bbbb3b2b61ad4059ab0 (diff) |
Btrfs: Don't wait on tree block writeback before freeing them anymore
This isn't required anymore because we don't reallocate blocks that
have already been written in this transaction.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/ctree.c')
-rw-r--r-- | fs/btrfs/ctree.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c index 618e526c9046..1c3d9d6fbdad 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c | |||
@@ -751,7 +751,6 @@ static int balance_level(struct btrfs_trans_handle *trans, | |||
751 | add_root_to_dirty_list(root); | 751 | add_root_to_dirty_list(root); |
752 | path->nodes[level] = NULL; | 752 | path->nodes[level] = NULL; |
753 | clean_tree_block(trans, root, mid); | 753 | clean_tree_block(trans, root, mid); |
754 | wait_on_tree_block_writeback(root, mid); | ||
755 | /* once for the path */ | 754 | /* once for the path */ |
756 | free_extent_buffer(mid); | 755 | free_extent_buffer(mid); |
757 | ret = btrfs_free_extent(trans, root, mid->start, mid->len, | 756 | ret = btrfs_free_extent(trans, root, mid->start, mid->len, |
@@ -810,7 +809,6 @@ static int balance_level(struct btrfs_trans_handle *trans, | |||
810 | u32 blocksize = right->len; | 809 | u32 blocksize = right->len; |
811 | 810 | ||
812 | clean_tree_block(trans, root, right); | 811 | clean_tree_block(trans, root, right); |
813 | wait_on_tree_block_writeback(root, right); | ||
814 | free_extent_buffer(right); | 812 | free_extent_buffer(right); |
815 | right = NULL; | 813 | right = NULL; |
816 | wret = del_ptr(trans, root, path, level + 1, pslot + | 814 | wret = del_ptr(trans, root, path, level + 1, pslot + |
@@ -854,7 +852,6 @@ static int balance_level(struct btrfs_trans_handle *trans, | |||
854 | u64 bytenr = mid->start; | 852 | u64 bytenr = mid->start; |
855 | u32 blocksize = mid->len; | 853 | u32 blocksize = mid->len; |
856 | clean_tree_block(trans, root, mid); | 854 | clean_tree_block(trans, root, mid); |
857 | wait_on_tree_block_writeback(root, mid); | ||
858 | free_extent_buffer(mid); | 855 | free_extent_buffer(mid); |
859 | mid = NULL; | 856 | mid = NULL; |
860 | wret = del_ptr(trans, root, path, level + 1, pslot); | 857 | wret = del_ptr(trans, root, path, level + 1, pslot); |
@@ -2638,7 +2635,6 @@ int btrfs_del_items(struct btrfs_trans_handle *trans, struct btrfs_root *root, | |||
2638 | } else { | 2635 | } else { |
2639 | u64 root_gen = btrfs_header_generation(path->nodes[1]); | 2636 | u64 root_gen = btrfs_header_generation(path->nodes[1]); |
2640 | clean_tree_block(trans, root, leaf); | 2637 | clean_tree_block(trans, root, leaf); |
2641 | wait_on_tree_block_writeback(root, leaf); | ||
2642 | wret = del_ptr(trans, root, path, 1, path->slots[1]); | 2638 | wret = del_ptr(trans, root, path, 1, path->slots[1]); |
2643 | if (wret) | 2639 | if (wret) |
2644 | ret = wret; | 2640 | ret = wret; |
@@ -2690,7 +2686,6 @@ int btrfs_del_items(struct btrfs_trans_handle *trans, struct btrfs_root *root, | |||
2690 | path->nodes[1]); | 2686 | path->nodes[1]); |
2691 | 2687 | ||
2692 | clean_tree_block(trans, root, leaf); | 2688 | clean_tree_block(trans, root, leaf); |
2693 | wait_on_tree_block_writeback(root, leaf); | ||
2694 | 2689 | ||
2695 | wret = del_ptr(trans, root, path, 1, slot); | 2690 | wret = del_ptr(trans, root, path, 1, slot); |
2696 | if (wret) | 2691 | if (wret) |