xx(lvactivate,
"Activate logical volume on given partition(s)",
"lvactivate "
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-v/--verbose]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-v|--verbose]\n"
"Logical Volume(s)\n")
***********/
xx(lvchange,
"Change the attributes of logical volume(s)",
"lvchange\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-a/--available y/n]\n"
- "\t[-C/--contiguous y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-a|--available y|n]\n"
+ "\t[-C|--contiguous y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
"\t[--ignorelockingfailure]\n"
- "\t[-M/--persistent y/n] [--minor minor]\n"
- "\t[-P/--partial] " "\n"
- "\t[-p/--permission r/rw]\n"
- "\t[-r/--readahead ReadAheadSectors]\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-M|--persistent y|n] [--minor minor]\n"
+ "\t[-P|--partial] " "\n"
+ "\t[-p|--permission r|rw]\n"
+ "\t[-r|--readahead ReadAheadSectors]\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tLogicalVolume[Path] [LogicalVolume[Path]...]\n",
autobackup_ARG, available_ARG, contiguous_ARG,
- ignorelockingfailure_ARG, minor_ARG, persistent_ARG, partial_ARG,
- permission_ARG, readahead_ARG, test_ARG)
+ ignorelockingfailure_ARG, minor_ARG, partial_ARG, permission_ARG,
+ persistent_ARG, readahead_ARG, test_ARG)
xx(lvcreate,
"Create a logical volume",
- "Original logical volume synopsis:\n\n"
"lvcreate " "\n"
"\t[-A|--autobackup {y|n}]\n"
"\t[-C|--contiguous {y|n}]\n"
"\t[-d|--debug]\n"
- "\t[-h|--help]\n"
+ "\t[-h|-?|--help]\n"
"\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
"\t{-l|--extents LogicalExtentsNumber |\n"
"\t -L|--size LogicalVolumeSize[kKmMgGtT]}\n"
"\t[-v|--verbose]\n"
"\t[-Z|--zero {y|n}]\n"
"\t[--version]\n"
- "\tVolumeGroupName [PhysicalVolumePath...]\n\n\n"
+ "\tVolumeGroupName [PhysicalVolumePath...]\n\n"
- "Snapshot logical volume synopsis:\n\n"
- "lvcreate " "\n"
- "\t-s|--snapshot\n"
+ "lvcreate -s|--snapshot\n"
"\t[-c|--chunksize]\n"
"\t[-A|--autobackup {y|n}]\n"
"\t[-C|--contiguous {y|n}]\n"
"\t[-d|--debug]\n"
- "\t[-h|--help]\n"
+ "\t[-h|-?|--help]\n"
"\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
"\t{-l|--extents LogicalExtentsNumber |\n"
"\t -L|--size LogicalVolumeSize[kKmMgGtT]}\n"
xx(lvdisplay,
"Display information about a logical volume",
"lvdisplay\n"
- "\t[-c/--colon]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
+ "\t[-c|--colon]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
"\t[--ignorelockingfailure]\n"
- "\t[-m/--maps]\n"
- "\t[-P/--partial] " "\n"
- "\t[-v/--verbose]\n"
+ "\t[-m|--maps]\n"
+ "\t[-P|--partial] " "\n"
+ "\t[-v|--verbose]\n"
"\tLogicalVolume[Path] [LogicalVolume[Path]...]\n",
colon_ARG, disk_ARG, ignorelockingfailure_ARG, maps_ARG, partial_ARG)
xx(lvextend,
"Add space to a logical volume",
"lvextend\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
"\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
- "\t{-l/--extents [+]LogicalExtentsNumber |\n"
- "\t -L/--size [+]LogicalVolumeSize[kKmMgGtT]}\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t{-l|--extents [+]LogicalExtentsNumber |\n"
+ "\t -L|--size [+]LogicalVolumeSize[kKmMgGtT]}\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tLogicalVolume[Path] [ PhysicalVolumePath... ]\n",
autobackup_ARG, extents_ARG, size_ARG, stripes_ARG,
xx(lvmchange,
"With the device mapper, this is obsolete and does nothing.",
"lvmchange\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-R/--reset]\n"
- "\t[-v/--verbose]\n",
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-R|--reset]\n"
+ "\t[-v|--verbose]\n",
reset_ARG)
xx(lvmdiskscan,
"List devices that may be used as physical volumes",
"lvmdiskscan\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-l/--lvmpartition]\n",
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-l|--lvmpartition]\n",
lvmpartition_ARG)
xx(lvmsadc,
"Collect activity data",
"lvmsadc\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-v/--verbose]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-v|--verbose]\n"
"\t[LogFilePath]\n" )
xx(lvmsar,
"Create activity report",
"lvmsar\n"
- "\t[-d/--debug]\n"
- "\t[-f/--full]\n"
- "\t[-h/--help]\n"
- "\t[-s/--stdin]\n"
- "\t[-v/--verbose]\n"
+ "\t[-d|--debug]\n"
+ "\t[-f|--full]\n"
+ "\t[-h|--help]\n"
+ "\t[-s|--stdin]\n"
+ "\t[-v|--verbose]\n"
"\tLogFilePath\n",
full_ARG, stdin_ARG)
xx(lvreduce,
"Reduce the size of a logical volume",
"lvreduce\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-f/--force]\n"
- "\t[-h/--help]\n"
- "\t{-l/--extents [-]LogicalExtentsNumber |\n"
- "\t -L/--size [-]LogicalVolumeSize[kKmMgGtT]}\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-f|--force]\n"
+ "\t[-h|--help]\n"
+ "\t{-l|--extents [-]LogicalExtentsNumber |\n"
+ "\t -L|--size [-]LogicalVolumeSize[kKmMgGtT]}\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tLogicalVolume[Path]\n",
autobackup_ARG, force_ARG, extents_ARG,
xx(lvremove,
"Remove logical volume(s) from the system",
"lvremove\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-f/--force]\n"
- "\t[-h/--help]\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-f|--force]\n"
+ "\t[-h|--help]\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tLogicalVolume[Path] [LogicalVolume[Path]...]\n",
autobackup_ARG, force_ARG, test_ARG)
"lvrename "
"\t[-A|--autobackup {y|n}] " "\n"
"\t[-d|--debug] " "\n"
- "\t[-h|--help] " "\n"
+ "\t[-h|-?|--help] " "\n"
"\t[-t|--test] " "\n"
"\t[-v|--verbose]" "\n"
"\t[--version] " "\n"
xx(lvresize,
"Resize a logical volume",
"lvresize\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
"\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
- "\t{-l/--extents [+/-]LogicalExtentsNumber |\n"
- "\t -L/--size [+/-]LogicalVolumeSize[kKmMgGtT]}\n"
+ "\t{-l|--extents [+|-]LogicalExtentsNumber |\n"
+ "\t -L|--size [+|-]LogicalVolumeSize[kKmMgGtT]}\n"
"\t[-t|--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-v|--verbose]\n"
"\tLogicalVolume[Path] [ PhysicalVolumePath... ]\n",
autobackup_ARG, extents_ARG, size_ARG, stripes_ARG, stripesize_ARG,
"lvscan " "\n"
"\t[-b|--blockdevice] " "\n"
"\t[-d|--debug] " "\n"
- "\t[-h|--help] " "\n"
+ "\t[-h|-?|--help] " "\n"
"\t[--ignorelockingfailure]\n"
"\t[-P|--partial] " "\n"
"\t[-v|--verbose] " "\n"
xx(pvchange,
"Change attributes of physical volume(s)",
"pvchange\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-v/--verbose]\n"
- "\t[-a/--all]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-v|--verbose]\n"
+ "\t[-a|--all]\n"
"\t[-t|--test]\n"
- "\t[-x/--allocatable y/n]\n"
+ "\t[-x|--allocatable y|n]\n"
"\t[PhysicalVolumePath...]\n",
all_ARG, allocatable_ARG, allocation_ARG, autobackup_ARG, test_ARG)
"\t[--restorefile file]\n"
"\t[-d|--debug]" "\n"
"\t[-f[f]|--force [--force]] " "\n"
- "\t[-h|--help] " "\n"
+ "\t[-h|-?|--help] " "\n"
"\t[--labelsector sector] " "\n"
"\t[-M|--metadatatype 1|2]" "\n"
"\t[--metadatacopies #copies]" "\n"
"\t[-a|--all] " "\n"
"\t[-d|--debug] " "\n"
"\t[-E|--physicalextent] " "\n"
- "\t[-h|--help]" "\n"
+ "\t[-h|-?|--help]" "\n"
"\t[-L|--logicalvolume] " "\n"
"\t[-P[P]|--physicalvolume [--physicalvolume]]" "\n"
"\t[-U|--uuidlist] " "\n"
xx(pvdisplay,
"Display various attributes of logical volume(s)",
"pvdisplay\n"
- "\t[-c/--colon]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
+ "\t[-c|--colon]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
"\t[--ignorelockingfailure]\n"
- "\t[-m/--maps]\n"
- "\t[-s/--short]\n"
- "\t[-v/--verbose]\n"
+ "\t[-m|--maps]\n"
+ "\t[-s|--short]\n"
+ "\t[-v|--verbose]\n"
"\tPhysicalVolumePath [PhysicalVolumePath...]\n",
colon_ARG, ignorelockingfailure_ARG, maps_ARG, short_ARG)
"[-A|--autobackup {y|n}] "
"[-d|--debug] "
"[-f|--force]"
- "[-h|--help]\n\t"
+ "[-h|-?|--help]\n\t"
"[-t|--test] "
"[-v|--verbose] "
"[--version]\n\t"
"pvremove " "\n"
"\t[-d|--debug]" "\n"
"\t[-f[f]|--force [--force]] " "\n"
- "\t[-h|--help] " "\n"
+ "\t[-h|-?|--help] " "\n"
"\t[-y|--yes]" "\n"
"\t[-t|--test] " "\n"
"\t[-v|--verbose] " "\n"
"pvresize "
"[-A|--autobackup {y|n}] "
"[-d|--debug] "
- "[-h|--help]\n\t"
+ "[-h|-?|--help]\n\t"
"[-s|--size PhysicalVolumeSize[kKmMgGtT]" "\n"
"[-v|--verbose] "
"[--version]\n\t"
"List all physical volumes",
"pvscan " "\n"
"\t[-d|--debug] " "\n"
- "\t{-e|--exported | -n/--novolumegroup} " "\n"
- "\t[-h|--help]" "\n"
+ "\t{-e|--exported | -n|--novolumegroup} " "\n"
+ "\t[-h|-?|--help]" "\n"
"\t[--ignorelockingfailure]\n"
"\t[-P|--partial] " "\n"
"\t[-s|--short] " "\n"
"vgcfgbackup " "\n"
"\t[-d|--debug] " "\n"
"\t[-f|--file filename] " "\n"
- "\t[-h|--help] " "\n"
+ "\t[-h|-?|--help] " "\n"
"\t[--ignorelockingfailure]\n"
"\t[-P|--partial] " "\n"
"\t[-v|--verbose]" "\n"
"\t -l|--logicalvolume MaxLogicalVolumes}" "\n"
"\t[VolumeGroupName...]\n",
- autobackup_ARG, available_ARG, ignorelockingfailure_ARG, logicalvolume_ARG,
- partial_ARG, resizeable_ARG, resizable_ARG, allocation_ARG, test_ARG)
+ allocation_ARG, autobackup_ARG, available_ARG, ignorelockingfailure_ARG,
+ logicalvolume_ARG, partial_ARG, resizeable_ARG, resizable_ARG, test_ARG)
xx(vgck,
"Check the consistency of volume group(s)",
"vgck "
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-v/--verbose]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-v|--verbose]\n"
"\t[VolumeGroupName...]\n" )
xx(vgconvert,
xx(vgextend,
"Add physical volumes to a volume group",
"vgextend\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tVolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]\n",
autobackup_ARG, test_ARG)
xx(vgimport,
"Register exported volume group with system",
"vgimport " "\n"
- "\t[-a/--all]\n"
+ "\t[-a|--all]\n"
"\t[-d|--debug] " "\n"
"\t[-f|--force] " "\n"
"\t[-h|--help] " "\n"
xx(vgmerge,
"Merge volume groups",
"vgmerge\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-l/--list]\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-l|--list]\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tDestinationVolumeGroupName SourceVolumeGroupName\n",
autobackup_ARG, list_ARG, test_ARG)
xx(vgmknodes,
"Create the special files for volume group devices in /dev",
"vgmknodes\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-v/--verbose]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-v|--verbose]\n"
"\t[VolumeGroupName...]\n" )
xx(vgreduce,
"Remove physical volume(s) from a volume group",
"vgreduce\n"
- "\t[-a/--all]\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-a|--all]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tVolumeGroupName\n"
"\t[PhysicalVolumePath...]\n",
xx(vgremove,
"Remove volume group(s)",
"vgremove\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tVolumeGroupName [VolumeGroupName...]\n",
test_ARG)
xx(vgrename,
"Rename a volume group",
"vgrename\n"
- "\t[-A/--autobackup y/n]\n"
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
- "\t[-t/--test]\n"
- "\t[-v/--verbose]\n"
+ "\t[-A|--autobackup y|n]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
+ "\t[-t|--test]\n"
+ "\t[-v|--verbose]\n"
"\tOldVolumeGroupPath NewVolumeGroupPath |\n"
"\tOldVolumeGroupName NewVolumeGroupName\n",
xx(vgscan,
"Search for all volume groups",
"vgscan "
- "\t[-d/--debug]\n"
- "\t[-h/--help]\n"
+ "\t[-d|--debug]\n"
+ "\t[-h|--help]\n"
"\t[--ignorelockingfailure]\n"
- "\t[-P/--partial] " "\n"
- "\t[-v/--verbose]\n" ,
+ "\t[-P|--partial] " "\n"
+ "\t[-v|--verbose]\n" ,
ignorelockingfailure_ARG, partial_ARG)
#include "tools.h"
-int _get_max_dev_name_len(struct dev_filter *filter);
-void _count(struct device *, int *, int *);
-void _print(struct device *, uint64_t, char *);
-int _check_device(struct device *);
-
int disks_found = 0;
int parts_found = 0;
int pv_disks_found = 0;
int pv_parts_found = 0;
int max_len;
-int lvmdiskscan(struct cmd_context *cmd, int argc, char **argv)
+static int _get_max_dev_name_len(struct dev_filter *filter)
{
- uint64_t size;
+ int len = 0;
+ int max_len = 0;
struct dev_iter *iter;
struct device *dev;
- struct label *label;
-
- if (arg_count(cmd, lvmpartition_ARG))
- log_print("WARNING: only considering LVM devices");
- max_len = _get_max_dev_name_len(cmd->filter);
-
- if (!(iter = dev_iter_create(cmd->filter))) {
+ if (!(iter = dev_iter_create(filter))) {
log_error("dev_iter_create failed");
return 0;
}
/* Do scan */
for (dev = dev_iter_get(iter); dev; dev = dev_iter_get(iter)) {
- /* Try if it is a PV first */
- if ((label_read(dev, &label))) {
- if (!dev_get_size(dev, &size)) {
- log_error("Couldn't get size of \"%s\"",
- dev_name(dev));
- continue;
- }
- _print(dev, size, "LVM physical volume");
- _count(dev, &pv_disks_found, &pv_parts_found);
- continue;
- }
- /* If user just wants PVs we are done */
- if (arg_count(cmd, lvmpartition_ARG))
- continue;
-
- /* What other device is it? */
- if (!_check_device(dev))
- continue;
+ len = strlen(dev_name(dev));
+ if (len > max_len)
+ max_len = len;
}
dev_iter_destroy(iter);
- /* Display totals */
- if (!arg_count(cmd, lvmpartition_ARG)) {
- log_print("%d disk%s",
- disks_found, disks_found == 1 ? "" : "s");
- log_print("%d partition%s",
- parts_found, parts_found == 1 ? "" : "s");
- }
- log_print("%d LVM physical volume whole disk%s",
- pv_disks_found, pv_disks_found == 1 ? "" : "s");
- log_print("%d LVM physical volume%s",
- pv_parts_found, pv_parts_found == 1 ? "" : "s");
+ return max_len;
+}
- return 0;
+static void _count(struct device *dev, int *disks, int *parts)
+{
+ int c = dev_name(dev)[strlen(dev_name(dev)) - 1];
+
+ if (!isdigit(c))
+ (*disks)++;
+ else
+ (*parts)++;
+}
+
+static void _print(struct device *dev, uint64_t size, char *what)
+{
+ char *dummy = display_size(size / 2, SIZE_SHORT);
+ const char *name = dev_name(dev);
+
+ if (!what)
+ what = "";
+
+ log_print("%-*s [%15s] %s", max_len, name, dummy, what);
+ dbg_free(dummy);
}
-int _check_device(struct device *dev)
+static int _check_device(struct device *dev)
{
char buffer;
uint64_t size;
return 1;
}
-int _get_max_dev_name_len(struct dev_filter *filter)
+int lvmdiskscan(struct cmd_context *cmd, int argc, char **argv)
{
- int len = 0;
- int max_len = 0;
+ uint64_t size;
struct dev_iter *iter;
struct device *dev;
+ struct label *label;
- if (!(iter = dev_iter_create(filter))) {
+ if (arg_count(cmd, lvmpartition_ARG))
+ log_print("WARNING: only considering LVM devices");
+
+ max_len = _get_max_dev_name_len(cmd->filter);
+
+ if (!(iter = dev_iter_create(cmd->filter))) {
log_error("dev_iter_create failed");
return 0;
}
/* Do scan */
for (dev = dev_iter_get(iter); dev; dev = dev_iter_get(iter)) {
- len = strlen(dev_name(dev));
- if (len > max_len)
- max_len = len;
+ /* Try if it is a PV first */
+ if ((label_read(dev, &label))) {
+ if (!dev_get_size(dev, &size)) {
+ log_error("Couldn't get size of \"%s\"",
+ dev_name(dev));
+ continue;
+ }
+ _print(dev, size, "LVM physical volume");
+ _count(dev, &pv_disks_found, &pv_parts_found);
+ continue;
+ }
+ /* If user just wants PVs we are done */
+ if (arg_count(cmd, lvmpartition_ARG))
+ continue;
+
+ /* What other device is it? */
+ if (!_check_device(dev))
+ continue;
}
dev_iter_destroy(iter);
- return max_len;
-}
-
-void _count(struct device *dev, int *disks, int *parts)
-{
- int c = dev_name(dev)[strlen(dev_name(dev)) - 1];
-
- if (!isdigit(c))
- (*disks)++;
- else
- (*parts)++;
-}
-
-void _print(struct device *dev, uint64_t size, char *what)
-{
- char *dummy = display_size(size / 2, SIZE_SHORT);
- const char *name = dev_name(dev);
-
- if (!what)
- what = "";
+ /* Display totals */
+ if (!arg_count(cmd, lvmpartition_ARG)) {
+ log_print("%d disk%s",
+ disks_found, disks_found == 1 ? "" : "s");
+ log_print("%d partition%s",
+ parts_found, parts_found == 1 ? "" : "s");
+ }
+ log_print("%d LVM physical volume whole disk%s",
+ pv_disks_found, pv_disks_found == 1 ? "" : "s");
+ log_print("%d LVM physical volume%s",
+ pv_parts_found, pv_parts_found == 1 ? "" : "s");
- log_print("%-*s [%15s] %s", max_len, name, dummy, what);
- dbg_free(dummy);
+ return 0;
}