From: David Sterba Date: Tue, 1 Sep 2015 13:10:48 +0000 (+0200) Subject: btrfs-progs: use on-stack buffer for superblock X-Git-Tag: upstream/4.16.1~2034 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c4123e1848db8066e5fed55545a334d3377c369f;p=platform%2Fupstream%2Fbtrfs-progs.git btrfs-progs: use on-stack buffer for superblock In update_disk_super_on_device,the buffer size is small, allocate it onstack and get rid of one error path. Signed-off-by: David Sterba --- diff --git a/btrfs-image.c b/btrfs-image.c index 18ad398..630fdf8 100644 --- a/btrfs-image.c +++ b/btrfs-image.c @@ -2588,7 +2588,7 @@ static int update_disk_super_on_device(struct btrfs_fs_info *info, char fs_uuid[BTRFS_UUID_SIZE]; u64 devid, type, io_align, io_width; u64 sector_size, total_bytes, bytes_used; - char *buf = NULL; + char buf[BTRFS_SUPER_INFO_SIZE]; int fp = -1; int ret; @@ -2636,13 +2636,6 @@ static int update_disk_super_on_device(struct btrfs_fs_info *info, goto out; } - buf = malloc(BTRFS_SUPER_INFO_SIZE); - if (!buf) { - ret = -ENOMEM; - close(fp); - return ret; - } - memcpy(buf, info->super_copy, BTRFS_SUPER_INFO_SIZE); disk_super = (struct btrfs_super_block *)buf; @@ -2672,7 +2665,6 @@ static int update_disk_super_on_device(struct btrfs_fs_info *info, write_backup_supers(fp, (u8 *)buf); out: - free(buf); if (fp != -1) close(fp); return ret;