]> sourceware.org Git - lvm2.git/commitdiff
The _free_vg that is created as a placeholder when reporting segments in pvs
authorPetr Rockai <prokai@redhat.com>
Wed, 17 Nov 2010 22:26:42 +0000 (22:26 +0000)
committerPetr Rockai <prokai@redhat.com>
Wed, 17 Nov 2010 22:26:42 +0000 (22:26 +0000)
was lacking the (vgmem) pool. We now create that pool. There is at least one
more such VG (_dummy_vg) which is pool-less. I am not sure what is the right
way to go about this, but this is currently necessary to fix a segfault
introduced by using vgmem in the reporter in Dave's lvseg lvm2app patches.

Signed-off-by: Petr Rockai <prockai@redhat.com>
tools/reporter.c

index f39d23f82008ad44d3840241f6c44d995994fc5a..40d3c9aaf8894ffabd48d684d2e2314e18ad049d 100644 (file)
@@ -64,6 +64,9 @@ static int _pvsegs_sub_single(struct cmd_context *cmd,
                .name = (char *)"",
        };
 
+        if (!(_free_vg.vgmem = dm_pool_create("_free_vg", 10240)))
+            return ECMD_FAILED;
+
        struct logical_volume _free_logical_volume = {
                .vg = vg ?: &_free_vg,
                .name = (char *) "",
@@ -103,10 +106,11 @@ static int _pvsegs_sub_single(struct cmd_context *cmd,
 
        if (!report_object(handle, vg, seg ? seg->lv : &_free_logical_volume, pvseg->pv,
                           seg ? : &_free_lv_segment, pvseg)) {
-               stack;
                ret = ECMD_FAILED;
+                goto_out;
        }
-
+ out:
+        dm_pool_destroy(_free_vg.vgmem);
        return ret;
 }
 
This page took 0.032819 seconds and 5 git commands to generate.