btrfs: reada, sink start parameter to btree_readahead_hook
authorDavid Sterba <dsterba@suse.com>
Tue, 8 Nov 2016 12:50:03 +0000 (13:50 +0100)
committerDavid Sterba <dsterba@suse.com>
Wed, 30 Nov 2016 12:45:16 +0000 (13:45 +0100)
Originally, the eb and start were passed separately in case eb is NULL.
Since the readahead has been refactored in 4.6, this is not true anymore
and we can get rid of the parameter.

Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/ctree.h
fs/btrfs/disk-io.c
fs/btrfs/reada.c

index b26b8b3..9768ce8 100644 (file)
@@ -3661,7 +3661,7 @@ struct reada_control *btrfs_reada_add(struct btrfs_root *root,
 int btrfs_reada_wait(void *handle);
 void btrfs_reada_detach(void *handle);
 int btree_readahead_hook(struct btrfs_fs_info *fs_info,
-                        struct extent_buffer *eb, u64 start, int err);
+                        struct extent_buffer *eb, int err);
 
 static inline int is_fstree(u64 rootid)
 {
index 3a57f99..9c4ef83 100644 (file)
@@ -747,7 +747,7 @@ static int btree_readpage_end_io_hook(struct btrfs_io_bio *io_bio,
 err:
        if (reads_done &&
            test_and_clear_bit(EXTENT_BUFFER_READAHEAD, &eb->bflags))
-               btree_readahead_hook(fs_info, eb, eb->start, ret);
+               btree_readahead_hook(fs_info, eb, ret);
 
        if (ret) {
                /*
@@ -772,7 +772,7 @@ static int btree_io_failed_hook(struct page *page, int failed_mirror)
        eb->read_mirror = failed_mirror;
        atomic_dec(&eb->io_pages);
        if (test_and_clear_bit(EXTENT_BUFFER_READAHEAD, &eb->bflags))
-               btree_readahead_hook(eb->fs_info, eb, eb->start, -EIO);
+               btree_readahead_hook(eb->fs_info, eb, -EIO);
        return -EIO;    /* we fixed nothing */
 }
 
index 9c7a042..e910bd9 100644 (file)
@@ -209,12 +209,8 @@ cleanup:
        return;
 }
 
-/*
- * start is passed separately in case eb in NULL, which may be the case with
- * failed I/O
- */
 int btree_readahead_hook(struct btrfs_fs_info *fs_info,
-                        struct extent_buffer *eb, u64 start, int err)
+                        struct extent_buffer *eb, int err)
 {
        int ret = 0;
        struct reada_extent *re;
@@ -222,7 +218,7 @@ int btree_readahead_hook(struct btrfs_fs_info *fs_info,
        /* find extent */
        spin_lock(&fs_info->reada_lock);
        re = radix_tree_lookup(&fs_info->reada_tree,
-                              start >> PAGE_SHIFT);
+                              eb->start >> PAGE_SHIFT);
        if (re)
                re->refcnt++;
        spin_unlock(&fs_info->reada_lock);