btrfs: get fs_info from eb in btrfs_exclude_logged_extents
[sfrench/cifs-2.6.git] / fs / btrfs / tree-log.c
index 561884f60d35c36e11928e28e5007901fc695198..4cb61cb72c4ed58c6b76762b38a79e5343796741 100644 (file)
@@ -225,6 +225,17 @@ void btrfs_end_log_trans(struct btrfs_root *root)
        }
 }
 
+static int btrfs_write_tree_block(struct extent_buffer *buf)
+{
+       return filemap_fdatawrite_range(buf->pages[0]->mapping, buf->start,
+                                       buf->start + buf->len - 1);
+}
+
+static void btrfs_wait_tree_block_writeback(struct extent_buffer *buf)
+{
+       filemap_fdatawait_range(buf->pages[0]->mapping,
+                               buf->start, buf->start + buf->len - 1);
+}
 
 /*
  * the walk control struct is used to pass state down the chain when
@@ -304,7 +315,7 @@ static int process_one_buffer(struct btrfs_root *log,
 
        if (!ret && btrfs_buffer_uptodate(eb, gen, 0)) {
                if (wc->pin && btrfs_header_level(eb) == 0)
-                       ret = btrfs_exclude_logged_extents(fs_info, eb);
+                       ret = btrfs_exclude_logged_extents(eb);
                if (wc->write)
                        btrfs_write_tree_block(eb);
                if (wc->wait)