]> sourceware.org Git - lvm2.git/commitdiff
Thin use items iterator and stack reporting
authorZdenek Kabelac <zkabelac@redhat.com>
Sat, 12 Nov 2011 22:52:18 +0000 (22:52 +0000)
committerZdenek Kabelac <zkabelac@redhat.com>
Sat, 12 Nov 2011 22:52:18 +0000 (22:52 +0000)
lib/metadata/lv_manip.c

index 460850614e861614bcd4bea457ab95a36016da46..c6aad37fc1e31608a8980bb9ae93117584b66fa5 100644 (file)
@@ -3235,6 +3235,7 @@ int lv_remove_with_dependencies(struct cmd_context *cmd, struct logical_volume *
                                const force_t force, unsigned level)
 {
        struct dm_list *snh, *snht;
+       struct seg_list *sl, *tsl;
 
        if (lv_is_cow(lv)) {
                /* A merging snapshot cannot be removed directly */
@@ -3263,12 +3264,11 @@ int lv_remove_with_dependencies(struct cmd_context *cmd, struct logical_volume *
                        log_error("Logical volume %s not removed.", lv->name);
                        return 0;
                }
-               dm_list_iterate_safe(snh, snht, &lv->segs_using_this_lv) {
-                       if (!lv_remove_with_dependencies(cmd,
-                                                        dm_list_item(snh, struct seg_list)->seg->lv,
+
+               dm_list_iterate_items_safe(sl, tsl, &lv->segs_using_this_lv)
+                       if (!lv_remove_with_dependencies(cmd, sl->seg->lv,
                                                         force, level + 1))
-                               return 0;
-               }
+                               return_0;
        }
 
        return lv_remove_single(cmd, lv, force);
This page took 0.043473 seconds and 5 git commands to generate.