diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2012-01-25 08:57:25 +0000 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2012-01-25 08:57:25 +0000 |
commit | 0926438aada6d3db54680aeebaf6746def1fa665 (patch) | |
tree | c2ab2d20c478ae1ca81e374957a387d4e52497e7 /lib/metadata/lv_manip.c | |
parent | d55aa53816162801da9689b629042d0177cf0d1c (diff) | |
download | lvm2-0926438aada6d3db54680aeebaf6746def1fa665.tar.gz lvm2-0926438aada6d3db54680aeebaf6746def1fa665.tar.xz lvm2-0926438aada6d3db54680aeebaf6746def1fa665.zip |
Thin prevent removal of its data and metadata LVs
LVs cannot be removed while there are linked to thin pool.
(Gives better error message, than validation).
Diffstat (limited to 'lib/metadata/lv_manip.c')
-rw-r--r-- | lib/metadata/lv_manip.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c index d51d4b55..03e07742 100644 --- a/lib/metadata/lv_manip.c +++ b/lib/metadata/lv_manip.c @@ -3172,6 +3172,12 @@ int lv_remove_single(struct cmd_context *cmd, struct logical_volume *lv, return 0; } + if (lv_is_thin_pool_data(lv) || lv_is_thin_pool_metadata(lv)) { + log_error("Can't remove logical volume %s used by a thin pool.", + lv->name); + return 0; + } + if (lv->status & LOCKED) { log_error("Can't remove locked LV %s", lv->name); return 0; |