aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs')
-rw-r--r--fs/btrfs/ctree.c5
-rw-r--r--fs/btrfs/extent-tree.c1
-rw-r--r--fs/btrfs/inode.c2
3 files changed, 2 insertions, 6 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)
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 4e5bd62e6e1a..76fd5d7146e1 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -1887,7 +1887,6 @@ struct extent_buffer *__btrfs_alloc_free_block(struct btrfs_trans_handle *trans,
1887 } 1887 }
1888 btrfs_set_header_generation(buf, trans->transid); 1888 btrfs_set_header_generation(buf, trans->transid);
1889 clean_tree_block(trans, root, buf); 1889 clean_tree_block(trans, root, buf);
1890 wait_on_tree_block_writeback(root, buf);
1891 btrfs_set_buffer_uptodate(buf); 1890 btrfs_set_buffer_uptodate(buf);
1892 1891
1893 if (PageDirty(buf->first_page)) { 1892 if (PageDirty(buf->first_page)) {
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index 3e1f21c632c1..5632ea760077 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -383,9 +383,11 @@ int btrfs_readpage_io_hook(struct page *page, u64 start, u64 end)
383 struct btrfs_csum_item *item; 383 struct btrfs_csum_item *item;
384 struct btrfs_path *path = NULL; 384 struct btrfs_path *path = NULL;
385 u32 csum; 385 u32 csum;
386
386 if (btrfs_test_opt(root, NODATASUM) || 387 if (btrfs_test_opt(root, NODATASUM) ||
387 btrfs_test_flag(inode, NODATASUM)) 388 btrfs_test_flag(inode, NODATASUM))
388 return 0; 389 return 0;
390
389 mutex_lock(&root->fs_info->fs_mutex); 391 mutex_lock(&root->fs_info->fs_mutex);
390 path = btrfs_alloc_path(); 392 path = btrfs_alloc_path();
391 item = btrfs_lookup_csum(NULL, root, path, inode->i_ino, start, 0); 393 item = btrfs_lookup_csum(NULL, root, path, inode->i_ino, start, 0);