[lvm-devel] master - pvcreate: Avoid spurious 'not found' messages.
Alasdair Kergon
agk at fedoraproject.org
Fri Nov 29 21:47:16 UTC 2013
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=2e82a070f3c9224da5c9f383d47e75a1715586cf
Commit: 2e82a070f3c9224da5c9f383d47e75a1715586cf
Parent: 84394c0219e4fcee719663c710121f1bb731a538
Author: Alasdair G Kergon <agk at redhat.com>
AuthorDate: Fri Nov 29 21:45:37 2013 +0000
Committer: Alasdair G Kergon <agk at redhat.com>
CommitterDate: Fri Nov 29 21:45:37 2013 +0000
pvcreate: Avoid spurious 'not found' messages.
Replacement of pv_read by find_pv_by_name in commit
651d5093edde3e0ebee9d75be1c9834efc152d91 caused spurious
error messages when running pvcreate or vgextend against an
unformatted device.
Physical volume /dev/loop4 not found
Physical volume "/dev/loop4" successfully created
Physical volume /dev/loop4 not found
Physical volume /dev/loop4 not found
Physical volume "/dev/loop4" successfully created
Volume group "vg1" successfully extended
---
lib/metadata/metadata-exported.h | 2 +-
lib/metadata/metadata.c | 8 ++++----
lib/metadata/mirror.c | 2 +-
tools/pvmove.c | 4 ++--
4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/lib/metadata/metadata-exported.h b/lib/metadata/metadata-exported.h
index ece5f53..f205a14 100644
--- a/lib/metadata/metadata-exported.h
+++ b/lib/metadata/metadata-exported.h
@@ -847,7 +847,7 @@ struct logical_volume *find_lv(const struct volume_group *vg,
const char *lv_name);
struct physical_volume *find_pv_by_name(struct cmd_context *cmd,
const char *pv_name,
- int allow_orphan);
+ int allow_orphan, int allow_unformatted);
const char *find_vgname_from_pvname(struct cmd_context *cmd,
const char *pvname);
diff --git a/lib/metadata/metadata.c b/lib/metadata/metadata.c
index f075c21..61816e2 100644
--- a/lib/metadata/metadata.c
+++ b/lib/metadata/metadata.c
@@ -633,7 +633,7 @@ static int vg_extend_single_pv(struct volume_group *vg, char *pv_name,
{
struct physical_volume *pv;
- if (!(pv = find_pv_by_name(vg->cmd, pv_name, 1)))
+ if (!(pv = find_pv_by_name(vg->cmd, pv_name, 1, 1)))
stack;
if (!pv && !pp) {
log_error("%s not identified as an existing "
@@ -1278,7 +1278,7 @@ static int pvcreate_check(struct cmd_context *cmd, const char *name,
/* FIXME Check partition type is LVM unless --force is given */
/* Is there a pv here already? */
- if (!(pv = find_pv_by_name(cmd, name, 1)))
+ if (!(pv = find_pv_by_name(cmd, name, 1, 1)))
stack;
/* Allow partial & exported VGs to be destroyed. */
@@ -1781,7 +1781,7 @@ struct physical_volume *find_pv(struct volume_group *vg, struct device *dev)
/* FIXME: liblvm todo - make into function that returns handle */
struct physical_volume *find_pv_by_name(struct cmd_context *cmd,
const char *pv_name,
- int allow_orphan)
+ int allow_orphan, int allow_unformatted)
{
struct device *dev;
struct pv_list *pvl;
@@ -1804,7 +1804,7 @@ struct physical_volume *find_pv_by_name(struct cmd_context *cmd,
else
free_pv_fid(pvl->pv);
- if (!pv)
+ if (!pv && !allow_unformatted)
log_error("Physical volume %s not found", pv_name);
if (pv && !allow_orphan && is_orphan_vg(pv->vg_name)) {
diff --git a/lib/metadata/mirror.c b/lib/metadata/mirror.c
index 6fc7674..18917d3 100644
--- a/lib/metadata/mirror.c
+++ b/lib/metadata/mirror.c
@@ -1577,7 +1577,7 @@ struct logical_volume *find_pvmove_lv_from_pvname(struct cmd_context *cmd,
struct physical_volume *pv;
struct logical_volume *lv;
- if (!(pv = find_pv_by_name(cmd, name, 0)))
+ if (!(pv = find_pv_by_name(cmd, name, 0, 0)))
return_NULL;
lv = find_pvmove_lv(vg, pv->dev, lv_type);
diff --git a/tools/pvmove.c b/tools/pvmove.c
index ab2e03b..19e1482 100644
--- a/tools/pvmove.c
+++ b/tools/pvmove.c
@@ -628,7 +628,7 @@ static int _set_up_pvmove(struct cmd_context *cmd, const char *pv_name,
argv++;
/* Find PV (in VG) */
- if (!(pv = find_pv_by_name(cmd, pv_name, 0))) {
+ if (!(pv = find_pv_by_name(cmd, pv_name, 0, 0))) {
stack;
return EINVALID_CMD_LINE;
}
@@ -809,7 +809,7 @@ static struct volume_group *_get_move_vg(struct cmd_context *cmd,
struct volume_group *vg;
/* Reread all metadata in case it got changed */
- if (!(pv = find_pv_by_name(cmd, name, 0))) {
+ if (!(pv = find_pv_by_name(cmd, name, 0, 0))) {
log_error("ABORTING: Can't reread PV %s", name);
/* What more could we do here? */
return NULL;
More information about the lvm-devel
mailing list