File 0032-btrfs-progs-Fix-malloc-size-for-superblock.patch of Package btrfsprogs.356
From a1a3dc7fd4fb7ab0abb1269d030d85e385fc8038 Mon Sep 17 00:00:00 2001
From: Qu Wenruo <quwenruo@cn.fujitsu.com>
Date: Thu, 3 Jul 2014 17:36:38 +0800
Subject: [PATCH 032/303] btrfs-progs: Fix malloc size for superblock.
recover_prepare() in chunk-recover.c alloc memory which only contains
sizeof(struct btrfs_super_block). This will cause glibc malloc error
after superblock csum is calculated.
Use BTRFS_SUPER_INFO_SIZE to fix the bug.
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
---
chunk-recover.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/chunk-recover.c b/chunk-recover.c
index 14c25a75492e..aa38916f76c4 100644
--- a/chunk-recover.c
+++ b/chunk-recover.c
@@ -1340,7 +1340,7 @@ static int recover_prepare(struct recover_control *rc, char *path)
return -1;
}
- sb = malloc(sizeof(struct btrfs_super_block));
+ sb = malloc(BTRFS_SUPER_INFO_SIZE);
if (!sb) {
fprintf(stderr, "allocating memory for sb failed.\n");
ret = -ENOMEM;
--
2.1.3