Skip to contentSkip to conversation

Btrfs-progs: fsck: fix double free memory crash

PATCH New Rakesh Pandit 1 participant 1 message Apr 20, 2014 Btrfs file system

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Btrfs-progs: fsck: fix double free memory crash

Fix double free of memory if btrfs_open_devices fails:
*** Error in `btrfs': double free or corruption (fasttop): 0x000000000066e020 ***

Crash happened because when open failed on device inside btrfs_open_devices it freed all memory by calling btrfs_close_devices but inside disk-io.c we call btrfs_close_again it again.

---
 disk-io.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
disk-io.c +1 -2
index 19b95a7..8db0335 100644
@@ -1091,8 +1091,7 @@ static struct btrfs_fs_info *__open_ctree_fd(int fp, const char *path,
 
 	ret = btrfs_open_devices(fs_devices, oflags);
 	if (ret)
-		goto out_devices;
-
+		goto out;
 
 	disk_super = fs_info->super_copy;
 	if (!(flags & OPEN_CTREE_RECOVER_SUPER))
Signature · 1 line
1.8.5.3