Fix leak in __btrfs_map_block error path

If we bail out when the stripe alloc fails, we need to undo the
earlier allocation of raid_map.

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
This commit is contained in:
Dave Jones 2013-07-30 13:42:17 -04:00 committed by Chris Mason
parent f5929cd814
commit eb2067f713

View file

@ -4673,6 +4673,7 @@ static int __btrfs_map_block(struct btrfs_fs_info *fs_info, int rw,
} }
bbio = kzalloc(btrfs_bio_size(num_alloc_stripes), GFP_NOFS); bbio = kzalloc(btrfs_bio_size(num_alloc_stripes), GFP_NOFS);
if (!bbio) { if (!bbio) {
kfree(raid_map);
ret = -ENOMEM; ret = -ENOMEM;
goto out; goto out;
} }