summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2011-11-10 12:39:01 +0000
committerZdenek Kabelac <zkabelac@redhat.com>2011-11-10 12:39:01 +0000
commit74e53e8bc0ea409854e1761ff6a43db0dd762f24 (patch)
tree4631f9ee46c202c86d443cd9b76db48d001435c7
parenteeaf1626262fbced3528b8ecbfc714a2bcf355f6 (diff)
downloadlvm2-74e53e8bc0ea409854e1761ff6a43db0dd762f24.tar.gz
lvm2-74e53e8bc0ea409854e1761ff6a43db0dd762f24.tar.xz
lvm2-74e53e8bc0ea409854e1761ff6a43db0dd762f24.zip
Thin disable pool create without activation
-rw-r--r--lib/metadata/lv_manip.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c
index eccee370..5b33e6dd 100644
--- a/lib/metadata/lv_manip.c
+++ b/lib/metadata/lv_manip.c
@@ -4110,13 +4110,21 @@ static struct logical_volume *_lv_create_an_lv(struct volume_group *vg, struct l
return NULL;
}
- if ((segtype_is_mirrored(lp->segtype) ||
- segtype_is_raid(lp->segtype) || seg_is_thin_volume(lp)) && !activation()) {
+ if (!activation() &&
+ (seg_is_mirrored(lp) ||
+ seg_is_raid(lp) ||
+ seg_is_thin_pool(lp))) {
+ /*
+ * FIXME: For thin pool add some code to allow delayed
+ * initialization of empty thin pool volume.
+ * i.e. using some LV flag, fake message,...
+ * and testing for metadata pool header signature?
+ */
log_error("Can't create %s without using "
"device-mapper kernel driver.",
segtype_is_raid(lp->segtype) ? lp->segtype->name :
segtype_is_mirrored(lp->segtype) ? "mirror" :
- "thin volume");
+ "thin pool volume");
return NULL;
}