summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Teigland <teigland@redhat.com>2015-07-10 13:27:02 -0500
committerDavid Teigland <teigland@redhat.com>2015-07-10 15:53:21 -0500
commit222bb2b88d06a67cc25ed19332919fa339d7e831 (patch)
tree0c5f940a3faee0744205007980673ec81b5848ff
parentb8538f5dcd2e1c0880607a2bbd067d6aa60e689a (diff)
downloadlvm2-222bb2b88d06a67cc25ed19332919fa339d7e831.tar.gz
lockd: note that external origins don't work in lockd VGs
in a comment at the point where it fails, and in the lvmlockd man page.
-rw-r--r--man/lvmlockd.8.in2
-rw-r--r--tools/lvconvert.c10
2 files changed, 12 insertions, 0 deletions
diff --git a/man/lvmlockd.8.in b/man/lvmlockd.8.in
index c3b0ac08c..659fead6f 100644
--- a/man/lvmlockd.8.in
+++ b/man/lvmlockd.8.in
@@ -686,6 +686,8 @@ Things that do not yet work in lockd VGs:
.br
- using lvcreate to create cache pools or cache LVs (use lvconvert)
.br
+- using external origins for thin LVs
+.br
- splitting mirrors and snapshots from LVs
.br
- vgsplit
diff --git a/tools/lvconvert.c b/tools/lvconvert.c
index c543a1e29..1461f4a03 100644
--- a/tools/lvconvert.c
+++ b/tools/lvconvert.c
@@ -2533,6 +2533,16 @@ static int _lvconvert_thin(struct cmd_context *cmd,
}
if (is_lockd_type(lv->vg->lock_type)) {
+ /*
+ * FIXME: external origins don't work in lockd VGs.
+ * Prior to the lvconvert, there's a lock associated with
+ * the uuid of the external origin LV. After the convert,
+ * that uuid belongs to the new thin LV, and a new LV with
+ * a new uuid exists as the non-thin, readonly external LV.
+ * We'd need to remove the lock for the previous uuid
+ * (the new thin LV will have no lock), and create a new
+ * lock for the new LV uuid used by the external LV.
+ */
log_error("Can't use lock_type %s LV as external origin.",
lv->vg->lock_type);
return 0;