btrfs-progs: use on-stack variable in __rebuild_device_items
authorDavid Sterba <dsterba@suse.com>
Fri, 6 Nov 2015 16:34:45 +0000 (17:34 +0100)
committerDavid Sterba <dsterba@suse.com>
Fri, 13 Nov 2015 17:24:34 +0000 (18:24 +0100)
Signed-off-by: David Sterba <dsterba@suse.com>
chunk-recover.c

index f8693f7..5146489 100644 (file)
@@ -1191,13 +1191,10 @@ static int __rebuild_device_items(struct btrfs_trans_handle *trans,
 {
        struct btrfs_device *dev;
        struct btrfs_key key;
-       struct btrfs_dev_item *dev_item;
+       struct btrfs_dev_item dev_item_tmp;
+       struct btrfs_dev_item *dev_item = &dev_item_tmp;
        int ret = 0;
 
-       dev_item = malloc(sizeof(struct btrfs_dev_item));
-       if (!dev_item)
-               return -ENOMEM;
-
        list_for_each_entry(dev, &rc->fs_devices->devices, dev_list) {
                key.objectid = BTRFS_DEV_ITEMS_OBJECTID;
                key.type = BTRFS_DEV_ITEM_KEY;
@@ -1218,7 +1215,6 @@ static int __rebuild_device_items(struct btrfs_trans_handle *trans,
                                        dev_item, sizeof(*dev_item));
        }
 
-       free(dev_item);
        return ret;
 }