From 3534fb40dfe5b2b9a5019a1ab47a6d6250cd1bda Mon Sep 17 00:00:00 2001 From: Dave Wysochanski Date: Mon, 28 Jun 2010 20:37:23 +0000 Subject: [PATCH] Add vg_mda_copies display field to 'vgs' command. Signed-off-by: Dave Wysochanski --- lib/report/columns.h | 1 + lib/report/report.c | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/lib/report/columns.h b/lib/report/columns.h index f30df12c5..823ce2cd5 100644 --- a/lib/report/columns.h +++ b/lib/report/columns.h @@ -116,6 +116,7 @@ FIELD(VGS, vg, NUM, "#VMda", cmd, 5, vgmdas, "vg_mda_count", "Number of metadata FIELD(VGS, vg, NUM, "#VMdaUse", cmd, 8, vgmdasused, "vg_mda_used_count", "Number of metadata areas in use on this VG.") FIELD(VGS, vg, NUM, "VMdaFree", cmd, 9, vgmdafree, "vg_mda_free", "Free metadata area space for this VG in current units.") FIELD(VGS, vg, NUM, "VMdaSize", cmd, 9, vgmdasize, "vg_mda_size", "Size of smallest metadata area for this VG in current units.") +FIELD(VGS, vg, NUM, "#VMdaCps", cmd, 8, vgmdacopies, "vg_mda_copies", "Target number of in use metadata areas in the VG.") FIELD(SEGS, seg, STR, "Type", list, 4, segtype, "segtype", "Type of LV segment.") FIELD(SEGS, seg, NUM, "#Str", area_count, 4, uint32, "stripes", "Number of stripes or mirror legs.") diff --git a/lib/report/report.c b/lib/report/report.c index fea98f501..57c257d66 100644 --- a/lib/report/report.c +++ b/lib/report/report.c @@ -917,6 +917,18 @@ static int _vgmdasused_disp(struct dm_report *rh, struct dm_pool *mem, return _uint32_disp(rh, mem, field, &count, private); } +static int _vgmdacopies_disp(struct dm_report *rh, struct dm_pool *mem, + struct dm_report_field *field, + const void *data, void *private) +{ + const struct volume_group *vg = (const struct volume_group *) data; + uint32_t count; + + count = vg_mda_copies(vg); + + return _uint32_disp(rh, mem, field, &count, private); +} + static int _pvmdafree_disp(struct dm_report *rh, struct dm_pool *mem, struct dm_report_field *field, const void *data, void *private)