]> sourceware.org Git - lvm2.git/commitdiff
thin: removal of external_origin
authorZdenek Kabelac <zkabelac@redhat.com>
Wed, 20 Feb 2013 15:14:24 +0000 (16:14 +0100)
committerZdenek Kabelac <zkabelac@redhat.com>
Sat, 23 Feb 2013 09:37:01 +0000 (10:37 +0100)
lib/metadata/lv_manip.c

index 72516ea52e67842a3660877b762bebde86bd95b5..ef9f643591c71dc440abff93da93bcddb62a76d1 100644 (file)
@@ -3352,6 +3352,12 @@ int lv_remove_single(struct cmd_context *cmd, struct logical_volume *lv,
                return 0;
        }
 
+       if (lv_is_external_origin(lv)) {
+               log_error("Can't remove external origin logical volume \"%s\".",
+                         lv->name);
+               return 0;
+       }
+
        if (lv->status & MIRROR_IMAGE) {
                log_error("Can't remove logical volume %s used by a mirror",
                          lv->name);
@@ -3578,6 +3584,10 @@ int lv_remove_with_dependencies(struct cmd_context *cmd, struct logical_volume *
                                return_0;
        }
 
+       if (lv_is_external_origin(lv) &&
+           !_lv_remove_segs_using_this_lv(cmd, lv, force, level, "external origin"))
+               return_0;
+
        if (lv_is_used_thin_pool(lv) &&
            !_lv_remove_segs_using_this_lv(cmd, lv, force, level, "pool"))
                return_0;
This page took 0.047809 seconds and 5 git commands to generate.