Эх сурвалжийг харах

Btrfs: Add check for null block group to find_search_start

Signed-off-by: Chris Mason <chris.mason@oracle.com>
Chris Mason 17 жил өмнө
parent
commit
0e4de58432

+ 3 - 0
fs/btrfs/extent-tree.c

@@ -204,6 +204,7 @@ new_group:
 wrapped:
 wrapped:
 	cache = btrfs_lookup_block_group(root->fs_info, last);
 	cache = btrfs_lookup_block_group(root->fs_info, last);
 	if (!cache) {
 	if (!cache) {
+no_cache:
 		if (!wrapped) {
 		if (!wrapped) {
 			wrapped = 1;
 			wrapped = 1;
 			last = search_start;
 			last = search_start;
@@ -219,6 +220,8 @@ wrapped:
 	}
 	}
 	if (!full_scan)
 	if (!full_scan)
 		cache = btrfs_find_block_group(root, cache, last, data, 0);
 		cache = btrfs_find_block_group(root, cache, last, data, 0);
+	if (!cache)
+		goto no_cache;
 	*cache_ret = cache;
 	*cache_ret = cache;
 	cache_miss = 0;
 	cache_miss = 0;
 	goto again;
 	goto again;