mirror of
git://sourceware.org/git/lvm2.git
synced 2024-10-28 03:27:58 +03:00
report: proper lv_attr_dup emulation
We need to create a mempool for proper emulation of lv_attr_dup for lvm2api.
This commit is contained in:
parent
158e998876
commit
87e80b6aac
@ -827,14 +827,23 @@ out:
|
||||
/* backward compatible internal API for lvm2api, TODO improve it */
|
||||
char *lv_attr_dup(struct dm_pool *mem, const struct logical_volume *lv)
|
||||
{
|
||||
char *ret = NULL;
|
||||
struct lv_with_info_and_seg_status status = {
|
||||
.seg_status.type = SEG_STATUS_NONE
|
||||
.seg_status.type = SEG_STATUS_NONE,
|
||||
.lv = lv
|
||||
};
|
||||
|
||||
if (!lv_info_with_seg_status(lv->vg->cmd, lv, first_seg(lv), 1, &status, 1, 1))
|
||||
return_NULL;
|
||||
if (!(status.seg_status.mem = dm_pool_create("reporter_pool", 1024)))
|
||||
return_0;
|
||||
|
||||
return lv_attr_dup_with_info_and_seg_status(mem, &status);
|
||||
if (!lv_info_with_seg_status(lv->vg->cmd, lv, first_seg(lv), 1, &status, 1, 1))
|
||||
goto_bad;
|
||||
|
||||
ret = lv_attr_dup_with_info_and_seg_status(mem, &status);
|
||||
bad:
|
||||
dm_pool_destroy(status.seg_status.mem);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int lv_set_creation(struct logical_volume *lv,
|
||||
|
Loading…
Reference in New Issue
Block a user