Message ID | 20110225121606.GA4248@Archlinux (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/fs/btrfs/free-space-cache.c b/fs/btrfs/free-space-cache.c index a039065..f631817 100644 --- a/fs/btrfs/free-space-cache.c +++ b/fs/btrfs/free-space-cache.c @@ -1515,12 +1515,12 @@ again: } if (info->bytes == bytes) { - unlink_free_space(block_group, info); - if (info->bitmap) { - kfree(info->bitmap); - block_group->total_bitmaps--; + if (info->bitmap) + free_bitmap(block_group, info); + else { + unlink_free_space(block_group, info); + kfree(info); } - kfree(info); goto out_lock; }