btrfs: use reada direction enum instead of constant value in populate_free_space_tree
authorGu Jinxiang <gujx@cn.fujitsu.com>
Thu, 11 Jan 2018 08:12:17 +0000 (16:12 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 26 Mar 2018 13:09:37 +0000 (15:09 +0200)
populate_free_space_tree calls function btrfs_search_slot_for_read with
parameter int find_higher = 1, it means that, if no exact match is
found, then use the next higher item.  So in function
populate_free_space_tree, use READA_FORWARD to read forward ahead.

This also changes the value from READA_BACK to READA_FORWARD, since
according to the logic, it should reada_for_search forward, not
backward.

Signed-off-by: Gu JinXiang <gujx@cn.fujitsu.com>
Reviewed-by: Nikolay Borisov <nborisov@suse.com>
[ update changelog ]
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/free-space-tree.c

index fe5e0324dca9233205a3c176f10a893dba8c9136..d7b6c00171437432f58e0b0a3ef31f3d8841f5b2 100644 (file)
@@ -1071,7 +1071,7 @@ static int populate_free_space_tree(struct btrfs_trans_handle *trans,
        path = btrfs_alloc_path();
        if (!path)
                return -ENOMEM;
-       path->reada = 1;
+       path->reada = READA_FORWARD;
 
        path2 = btrfs_alloc_path();
        if (!path2) {