From: Qu Wenruo Date: Thu, 18 Jan 2018 08:38:23 +0000 (+0800) Subject: btrfs-progs: check: Move reset_cached_block_groups to check/common.c X-Git-Tag: upstream/4.16.1~156 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5dade4b9514cbb765c9c2905172bb371b7479a77;p=platform%2Fupstream%2Fbtrfs-progs.git btrfs-progs: check: Move reset_cached_block_groups to check/common.c Reviewed-by: Su Yue Signed-off-by: Qu Wenruo Signed-off-by: David Sterba --- diff --git a/check/common.c b/check/common.c index 4cdc46b..d6abf6d 100644 --- a/check/common.c +++ b/check/common.c @@ -324,3 +324,28 @@ int check_child_node(struct extent_buffer *parent, int slot, } return ret; } + +void reset_cached_block_groups(struct btrfs_fs_info *fs_info) +{ + struct btrfs_block_group_cache *cache; + u64 start, end; + int ret; + + while (1) { + ret = find_first_extent_bit(&fs_info->free_space_cache, 0, + &start, &end, EXTENT_DIRTY); + if (ret) + break; + clear_extent_dirty(&fs_info->free_space_cache, start, end); + } + + start = 0; + while (1) { + cache = btrfs_lookup_first_block_group(fs_info, start); + if (!cache) + break; + if (cache->cached) + cache->cached = 0; + start = cache->key.objectid + cache->key.offset; + } +} diff --git a/check/common.h b/check/common.h index d200a0c..09745af 100644 --- a/check/common.h +++ b/check/common.h @@ -95,5 +95,6 @@ void reada_walk_down(struct btrfs_root *root, struct extent_buffer *node, int slot); int check_child_node(struct extent_buffer *parent, int slot, struct extent_buffer *child); +void reset_cached_block_groups(struct btrfs_fs_info *fs_info); #endif diff --git a/check/main.c b/check/main.c index 1a29601..6f5af7f 100644 --- a/check/main.c +++ b/check/main.c @@ -412,8 +412,6 @@ static void free_file_extent_holes(struct rb_root *holes) } } -static void reset_cached_block_groups(struct btrfs_fs_info *fs_info); - static void record_root_in_trans(struct btrfs_trans_handle *trans, struct btrfs_root *root) { @@ -10202,31 +10200,6 @@ static int prune_corrupt_blocks(struct btrfs_fs_info *info) return 0; } -static void reset_cached_block_groups(struct btrfs_fs_info *fs_info) -{ - struct btrfs_block_group_cache *cache; - u64 start, end; - int ret; - - while (1) { - ret = find_first_extent_bit(&fs_info->free_space_cache, 0, - &start, &end, EXTENT_DIRTY); - if (ret) - break; - clear_extent_dirty(&fs_info->free_space_cache, start, end); - } - - start = 0; - while (1) { - cache = btrfs_lookup_first_block_group(fs_info, start); - if (!cache) - break; - if (cache->cached) - cache->cached = 0; - start = cache->key.objectid + cache->key.offset; - } -} - static int check_extent_refs(struct btrfs_root *root, struct cache_tree *extent_cache) {