]> sourceware.org Git - lvm2.git/commitdiff
toollib: improve ignore_vg case in _process_pvs_in_vgs
authorDavid Teigland <teigland@redhat.com>
Tue, 18 Nov 2014 15:22:37 +0000 (09:22 -0600)
committerDavid Teigland <teigland@redhat.com>
Tue, 18 Nov 2014 15:25:56 +0000 (09:25 -0600)
ignore_vg now returns 0 for the FAILED_CLUSTERED case,
so all the ignore_vg 1 cases will return vg's with an
empty vg->pvs, so we do not need to iterate through
vg->pvs to remove the entries from the devices list.

Clean up whitespace problems in that area from the
previous commit.

tools/toollib.c

index 8eb434d9714ade0ade84733e3831e6de5e87c7f1..30dc980bad47ec3387866a530799eadf51937dfb 100644 (file)
@@ -2200,25 +2200,26 @@ static int _process_pvs_in_vgs(struct cmd_context *cmd, uint32_t flags,
                vg = vg_read(cmd, vg_name, vg_uuid, flags | READ_WARN_INCONSISTENT);
                if (ignore_vg(vg, vg_name, flags & READ_ALLOW_INCONSISTENT, &skip)) {
                        stack;
-                       ret = ECMD_FAILED;
-                       skip = 1;
-
-                       /* Only continue if no vg was returned. */
-                       if (!vg)
-                               continue;
+                       ret_max = ECMD_FAILED;
+                       continue;
                }
                
+               /*
+                * Don't continue when skip is set, because we need to remove
+                * vg->pvs entries from devices list.
+                */
+               
                ret = _process_pvs_in_vg(cmd, vg, all_devices, arg_pvnames, arg_tags,
                                         process_all, skip, handle, process_single_pv);
                if (ret != ECMD_PROCESSED)
                        stack;
-                if (ret > ret_max)
+               if (ret > ret_max)
                        ret_max = ret;
 
-                if (skip)
-                        release_vg(vg);
-                else
-                        unlock_and_release_vg(cmd, vg, vg->name);
+               if (skip)
+                       release_vg(vg);
+               else
+                       unlock_and_release_vg(cmd, vg, vg->name);
 
                /* Quit early when possible. */
                if (!process_all && dm_list_empty(arg_tags) && dm_list_empty(arg_pvnames))
This page took 0.045312 seconds and 5 git commands to generate.