From: Chris Mason Date: Thu, 13 Dec 2007 14:02:46 +0000 (-0500) Subject: Btrfs: Extra NULL block group checks in find_free_extent X-Git-Url: http://git.mmlx.us/?a=commitdiff_plain;h=70b043f0c7d7c78d8a0a01e65067c7c8fe338485;p=linux-edison.git Btrfs: Extra NULL block group checks in find_free_extent Signed-off-by: Chris Mason --- diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 187be401247..7c953b2ecf1 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c @@ -1319,6 +1319,12 @@ static int find_free_extent(struct btrfs_trans_handle *trans, struct btrfs_root total_needed += empty_size; path = btrfs_alloc_path(); check_failed: + if (!block_group) { + block_group = btrfs_lookup_block_group(info, search_start); + if (!block_group) + block_group = btrfs_lookup_block_group(info, + orig_search_start); + } search_start = find_search_start(root, &block_group, search_start, total_needed, data, full_scan); search_start = stripe_align(root, search_start);