From: Peter Rajnoha <prajnoha@redhat.com>
To: lvm-devel@redhat.com
Subject: [PATCH] Provide an extended message for pvmove when all LVs are skipped on a PV
Date: Mon, 01 Jun 2009 10:34:45 +0200 [thread overview]
Message-ID: <4A2392A5.3010600@redhat.com> (raw)
This just adds an extended message when trying to do a pvmove on
a PV where all the PEs belong to locked or non-top level LVs.
This way it's less confusing than the plain message "No data to
move". (requested in BZ 500898/500899)
Peter
diff --git a/tools/pvmove.c b/tools/pvmove.c
index 9ece646..f26a1e7 100644
--- a/tools/pvmove.c
+++ b/tools/pvmove.c
@@ -187,6 +187,7 @@ static struct logical_volume *_set_up_pvmove_lv(struct cmd_context *cmd,
struct lv_list *lvl;
uint32_t log_count = 0;
int lv_found = 0;
+ int lv_skipped = 0;
/* FIXME Cope with non-contiguous => splitting existing segments */
if (!(lv_mirr = lv_create_empty("pvmove%d", NULL,
@@ -216,22 +217,27 @@ static struct logical_volume *_set_up_pvmove_lv(struct cmd_context *cmd,
lv_found = 1;
}
if (lv_is_origin(lv) || lv_is_cow(lv)) {
+ lv_skipped = 1;
log_print("Skipping snapshot-related LV %s", lv->name);
continue;
}
if (lv->status & MIRRORED) {
+ lv_skipped = 1;
log_print("Skipping mirror LV %s", lv->name);
continue;
}
if (lv->status & MIRROR_LOG) {
+ lv_skipped = 1;
log_print("Skipping mirror log LV %s", lv->name);
continue;
}
if (lv->status & MIRROR_IMAGE) {
+ lv_skipped = 1;
log_print("Skipping mirror image LV %s", lv->name);
continue;
}
if (lv->status & LOCKED) {
+ lv_skipped = 1;
log_print("Skipping locked LV %s", lv->name);
continue;
}
@@ -247,6 +253,10 @@ static struct logical_volume *_set_up_pvmove_lv(struct cmd_context *cmd,
/* Is temporary mirror empty? */
if (!lv_mirr->le_count) {
+ if (lv_skipped)
+ log_error("All data on source PV skipped. "
+ "It contains locked, hidden or "
+ "non-top level LVs only.");
log_error("No data to move for %s", vg->name);
return NULL;
}
reply other threads:[~2009-06-01 8:34 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A2392A5.3010600@redhat.com \
--to=prajnoha@redhat.com \
--cc=lvm-devel@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.