]> sourceware.org Git - lvm2.git/commitdiff
Drop --ignoreskippedcluster option
authorDavid Teigland <teigland@redhat.com>
Fri, 15 Jun 2018 20:43:59 +0000 (15:43 -0500)
committerDavid Teigland <teigland@redhat.com>
Fri, 15 Jun 2018 20:59:34 +0000 (15:59 -0500)
It's no longer needed.  Clustered VGs are now handled in
the same way as foreign VGs, and as shared VGs that
can't be accessed:

- A command processing all VGs sees a clustered VG,
  prints a message ("Skipping clustered VG foo."),
  skips it, and does not fail.

- A command where the clustered VG is explicitly
  named on the command line, prints a message and fails.
  "Cannot access clustered VG foo, see lvmlockd(8)."

The option is listed in the set of ignored options for
the commands that previously accepted it.  (Removing it
entirely would cause commands/scripts to fail if they
set it.)

lib/commands/toolcontext.c
lib/commands/toolcontext.h
lib/metadata/metadata.c
scripts/lvm2_activation_generator_systemd_red_hat.c
scripts/lvm2_monitoring_systemd_red_hat.service.in
tools/args.h
tools/command-lines.in
tools/lvmcmdline.c
tools/toollib.c

index 723f8828feacbc10ecc93cfce7cab8e5a4cada43..50474c13ab2ee42f0bbbb2dc129397f3f6341c28 100644 (file)
@@ -1762,7 +1762,6 @@ struct cmd_context *create_toolcontext(unsigned is_clvmd,
        cmd->threaded = threaded ? 1 : 0;
        cmd->handles_missing_pvs = 0;
        cmd->handles_unknown_segments = 0;
-       cmd->ignore_clustered_vgs = 0;
        cmd->hosttags = 0;
        dm_list_init(&cmd->arg_value_groups);
        dm_list_init(&cmd->formats);
index 9849e5ff31fdb2ef233eae07a6f0dafee93c1ad0..2b730eaaa658f6654e9320f97319e1502680200b 100644 (file)
@@ -144,7 +144,6 @@ struct cmd_context {
        unsigned report_binary_values_as_numeric:1;
        unsigned report_mark_hidden_devices:1;
        unsigned metadata_read_only:1;
-       unsigned ignore_clustered_vgs:1;
        unsigned threaded:1;                    /* set if running within a thread e.g. clvmd */
        unsigned unknown_system_id:1;
        unsigned include_historical_lvs:1;      /* also process/report/display historical LVs */
index 34b1ec7e78e22435ccbb9d74ee8beb77d1b60f1f..0ff38a2ab8aae10b3d18c0860648aa821630721a 100644 (file)
@@ -4698,10 +4698,7 @@ static int _access_vg_clustered(struct cmd_context *cmd, const struct volume_gro
                        return 1;
                }
 
-               if (!cmd->ignore_clustered_vgs)
-                       log_error("Skipping clustered volume group %s", vg->name);
-               else
-                       log_verbose("Skipping clustered volume group %s", vg->name);
+               log_verbose("Skipping clustered VG %s.", vg->name);
                return 0;
        }
 
index 7791e64ab07b121717dd02b01802f475428db309..b3d18d2196fdf062b4badc4e26bb52fb3b7debe7 100644 (file)
@@ -175,7 +175,7 @@ static int generate_unit(struct generator *gen, int unit)
                      "Wants=systemd-udev-settle.service\n\n" "[Service]\n", f);
        }
 
-       fputs("ExecStart=" LVM_PATH " vgchange -aay --ignoreskippedcluster", f);
+       fputs("ExecStart=" LVM_PATH " vgchange -aay", f);
        if (gen->cfg.sysinit_needed)
                fputs(" --sysinit", f);
        fputs("\nType=oneshot\n", f);
index ebc069e2504aaa64d8cdecca2a8ed1d717f67bca..4144862c889a5d541ebf134b513b9b35df368bc9 100644 (file)
@@ -10,8 +10,8 @@ Conflicts=shutdown.target
 [Service]
 Type=oneshot
 Environment=LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES=1
-ExecStart=@SBINDIR@/lvm vgchange --monitor y --ignoreskippedcluster
-ExecStop=@SBINDIR@/lvm vgchange --monitor n --ignoreskippedcluster
+ExecStart=@SBINDIR@/lvm vgchange --monitor y
+ExecStop=@SBINDIR@/lvm vgchange --monitor n
 RemainAfterExit=yes
 
 [Install]
index 2434f4bed9079808f40f0f28e7a7736c1836fc95..e574bc73c6e25272de0aa8de870e945d9242b37d 100644 (file)
@@ -243,8 +243,7 @@ arg(ignoremonitoring_ARG, '\0', "ignoremonitoring", 0, 0, 0,
     "Do not use this if dmeventd is already monitoring a device.\n")
 
 arg(ignoreskippedcluster_ARG, '\0', "ignoreskippedcluster", 0, 0, 0,
-    "Use to avoid exiting with an non-zero status code if the command is run\n"
-    "without clustered locking and clustered VGs are skipped.\n")
+    "No longer used.\n")
 
 arg(ignoreunsupported_ARG, '\0', "ignoreunsupported", 0, 0, 0,
     "Exclude unsupported configuration settings from the output. These settings are\n"
index 0f9ed4705709c82d4ce1b69c5c7ee49f02716aad..0155b3371ce5484670ac1aa3a9f28a641441c119 100644 (file)
@@ -194,7 +194,7 @@ OO_ALL: --commandprofile String, --config String, --debug,
 # options for pvs, lvs, vgs, fullreport
 #
 OO_REPORT: --aligned, --all, --binary, --configreport ConfigReport, --foreign,
---ignorelockingfailure, --ignoreskippedcluster, --logonly,
+--ignorelockingfailure, --logonly,
 --nameprefixes, --noheadings, --nosuffix,
 --options String, --readonly, --reportformat ReportFmt, --rows,
 --select String, --separator String, --shared, --sort String,
@@ -213,8 +213,7 @@ OO_CONFIG: --atversion String, --typeconfig ConfigType, --file String, --ignorea
 # None of these can function as a required option for lvchange.
 
 OO_LVCHANGE: --autobackup Bool, --force, --ignoremonitoring,
---ignoreskippedcluster, --noudevsync, --reportformat ReportFmt,
---select String
+--noudevsync, --reportformat ReportFmt, --select String
 
 # Any of these can function as a required option for lvchange.
 # profile is also part of OO_ALL, but is repeated in OO_LVCHANGE_META
@@ -235,6 +234,7 @@ OO_LVCHANGE_META: --addtag Tag, --deltag Tag,
 
 lvchange OO_LVCHANGE_META VG|LV|Tag|Select ...
 OO: --activate Active, --poll Bool, --monitor Bool, OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_properties
 DESC: Change a general LV attribute.
 DESC: For options listed in parentheses, any one is
@@ -257,6 +257,7 @@ RULE: --alloc --discards --zero --cachemode --cachepolicy --cachesettings not lv
 
 lvchange --resync VG|LV_raid_mirror|Tag|Select ...
 OO: --activate Active, OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_resync
 DESC: Resyncronize a mirror or raid LV.
 RULE: all not lv_is_pvmove lv_is_locked
@@ -264,12 +265,14 @@ RULE: all not LV_raid0
 
 lvchange --syncaction SyncAction VG|LV_raid|Tag|Select ...
 OO: OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_syncaction
 DESC: Resynchronize or check a raid LV.
 RULE: all not LV_raid0
 
 lvchange --rebuild PV VG|LV_raid|Tag|Select ...
 OO: OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_rebuild
 DESC: Reconstruct data on specific PVs of a raid LV.
 RULE: all not LV_raid0
@@ -277,27 +280,32 @@ RULE: all not LV_raid0
 lvchange --activate Active VG|LV|Tag|Select ...
 OO: --activationmode ActivationMode, --partial, --poll Bool, --monitor Bool,
 --ignoreactivationskip, --ignorelockingfailure, --sysinit, OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_activate
 DESC: Activate or deactivate an LV.
 
 lvchange --refresh VG|LV|Tag|Select ...
 OO: --activationmode ActivationMode, --partial, --poll Bool, --monitor Bool, OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_refresh
 DESC: Reactivate an LV using the latest metadata.
 
 lvchange --monitor Bool VG|LV|Tag|Select ...
 OO: OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_monitor
 DESC: Start or stop monitoring an LV from dmeventd.
 RULE: all not lv_is_pvmove
 
 lvchange --poll Bool VG|LV|Tag|Select ...
 OO: --monitor Bool, OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_poll
 DESC: Start or stop processing an LV conversion.
 
 lvchange --persistent y --minor Number LV
 OO: --major Number, --activate Active, --poll Bool, --monitor Bool, OO_LVCHANGE
+IO: --ignoreskippedcluster
 ID: lvchange_persistent
 DESC: Make the minor device number persistent for an LV.
 RULE: all not LV_thinpool LV_cachepool
@@ -1193,12 +1201,12 @@ FLAGS: SECONDARY_SYNTAX
 lvdisplay
 OO: --aligned, --all, --binary, --colon, --columns,
 --configreport ConfigReport, --foreign, --history, --ignorelockingfailure,
---ignoreskippedcluster, --logonly, --maps, --noheadings,
+--logonly, --maps, --noheadings,
 --nosuffix, --options String, --sort String, --readonly,
 --reportformat ReportFmt, --segments, --select String, --separator String,
 --shared, --unbuffered, --units Units
 OP: VG|LV|Tag ...
-IO: --partial
+IO: --partial, --ignoreskippedcluster
 ID: lvdisplay_general
 
 ---
@@ -1312,7 +1320,7 @@ DESC: Resize a pool metadata SubLV by a specified size.
 lvs
 OO: --history, --segments, OO_REPORT
 OP: VG|LV|Tag ...
-IO: --partial
+IO: --partial, --ignoreskippedcluster
 ID: lvs_general
 
 ---
@@ -1333,8 +1341,7 @@ ID: lvscan_cache
 ---
 
 # None of these can function as a required option for pvchange.
-OO_PVCHANGE: --autobackup Bool, --force, --ignoreskippedcluster,
---reportformat ReportFmt, --uuid
+OO_PVCHANGE: --autobackup Bool, --force, --reportformat ReportFmt, --uuid
 
 # Any of these can function as a required option for pvchange.
 OO_PVCHANGE_META: --allocatable Bool, --addtag Tag, --deltag Tag,
@@ -1342,11 +1349,13 @@ OO_PVCHANGE_META: --allocatable Bool, --addtag Tag, --deltag Tag,
 
 pvchange OO_PVCHANGE_META --all
 OO: OO_PVCHANGE
+IO: --ignoreskippedcluster
 ID: pvchange_properties_all
 DESC: Change properties of all PVs.
 
 pvchange OO_PVCHANGE_META PV|Select ...
 OO: --select String, OO_PVCHANGE
+IO: --ignoreskippedcluster
 ID: pvchange_properties_some
 DESC: Change properties of specified PVs.
 
@@ -1381,11 +1390,12 @@ RULE: --bootloaderareasize not --restorefile
 
 pvdisplay
 OO: --aligned, --all, --binary, --colon, --columns, --configreport ConfigReport,
---foreign, --ignorelockingfailure, --ignoreskippedcluster,
+--foreign, --ignorelockingfailure,
 --logonly, --maps, --noheadings, --nosuffix, --options String,
 --readonly, --reportformat ReportFmt, --select String, --separator String, --shared,
 --short, --sort String, --unbuffered, --units Units
 OP: PV|Tag ...
+IO: --ignoreskippedcluster
 ID: pvdisplay_general
 
 ---
@@ -1413,7 +1423,7 @@ ID: pvremove_general
 pvs
 OO: --segments, OO_REPORT
 OP: PV|Tag ...
-IO: --partial
+IO: --partial, --ignoreskippedcluster
 ID: pvs_general
 
 ---
@@ -1473,7 +1483,7 @@ DESC: List one VG metadata backup file.
 
 # None of these can function as a required option for vgchange.
 
-OO_VGCHANGE: --autobackup Bool, --ignoremonitoring, --ignoreskippedcluster,
+OO_VGCHANGE: --autobackup Bool, --ignoremonitoring,
 --noudevsync, --reportformat ReportFmt, --select String, --force
 
 # Any of these can function as a required option for vgchange.
@@ -1489,6 +1499,7 @@ OO_VGCHANGE_META: --addtag Tag, --deltag Tag,
 vgchange OO_VGCHANGE_META
 OO: --poll Bool, OO_VGCHANGE
 OP: VG|Tag|Select ...
+IO: --ignoreskippedcluster
 ID: vgchange_properties
 DESC: Change a general VG attribute.
 DESC: For options listed in parentheses, any one is
@@ -1497,12 +1508,14 @@ DESC: required, after which the others are optional.
 vgchange --monitor Bool
 OO: --sysinit, --ignorelockingfailure, --poll Bool, OO_VGCHANGE
 OP: VG|Tag|Select ...
+IO: --ignoreskippedcluster
 ID: vgchange_monitor
 DESC: Start or stop monitoring LVs from dmeventd.
 
 vgchange --poll Bool
 OO: --ignorelockingfailure, OO_VGCHANGE
 OP: VG|Tag|Select ...
+IO: --ignoreskippedcluster
 ID: vgchange_poll
 DESC: Start or stop processing LV conversions.
 
@@ -1510,12 +1523,14 @@ vgchange --activate Active
 OO: --activationmode ActivationMode, --ignoreactivationskip, --partial, --sysinit,
 --ignorelockingfailure, --monitor Bool, --poll Bool, OO_VGCHANGE
 OP: VG|Tag|Select ...
+IO: --ignoreskippedcluster
 ID: vgchange_activate
 DESC: Activate or deactivate LVs.
 
 vgchange --refresh
 OO: --sysinit, --ignorelockingfailure, --poll Bool, OO_VGCHANGE
 OP: VG|Tag|Select ...
+IO: --ignoreskippedcluster
 ID: vgchange_refresh
 DESC: Reactivate LVs using the latest metadata.
 
@@ -1562,11 +1577,11 @@ ID: vgcreate_general
 vgdisplay
 OO: --activevolumegroups, --aligned, --binary, --colon, --columns,
 --configreport ConfigReport, --foreign, --ignorelockingfailure,
---ignoreskippedcluster, --logonly, --noheadings, --nosuffix,
+--logonly, --noheadings, --nosuffix,
 --options String, --readonly, --reportformat ReportFmt, --select String,
 --shared, --short, --separator String, --sort String, --unbuffered, --units Units
 OP: VG|Tag ...
-IO: --partial
+IO: --partial, --ignoreskippedcluster
 ID: vgdisplay_general
 
 ---
@@ -1668,7 +1683,7 @@ DESC: Rename a VG by specifying the VG UUID.
 vgs
 OO: OO_REPORT
 OP: VG|Tag ...
-IO: --partial
+IO: --partial, --ignoreskippedcluster
 ID: vgs_general
 
 ---
@@ -1723,7 +1738,7 @@ ID: devtypes_general
 fullreport
 OO: OO_REPORT
 OP: VG ...
-IO: --partial
+IO: --partial, --ignoreskippedcluster
 ID: fullreport_general
 
 lastlog
index 257811372703411b6f9b4c2b3f51a5733094e863..3e617c1a203a13413627ad22f7001b256972836e 100644 (file)
@@ -2323,7 +2323,6 @@ static int _get_current_settings(struct cmd_context *cmd)
                return EINVALID_CMD_LINE;
        }
 
-       cmd->ignore_clustered_vgs = arg_is_set(cmd, ignoreskippedcluster_ARG);
        cmd->include_foreign_vgs = arg_is_set(cmd, foreign_ARG) ? 1 : 0;
        cmd->include_shared_vgs = arg_is_set(cmd, shared_ARG) ? 1 : 0;
        cmd->include_historical_lvs = arg_is_set(cmd, history_ARG) ? 1 : 0;
index c81d1c24c243242f8b1f795ec4d43e68b88d5dfb..ebf2509cc89d8e4e3cfcf7769c7fd776af61f4e4 100644 (file)
@@ -204,10 +204,15 @@ static int _ignore_vg(struct volume_group *vg, const char *vg_name,
        if ((read_error & FAILED_INCONSISTENT) && (read_flags & READ_ALLOW_INCONSISTENT))
                read_error &= ~FAILED_INCONSISTENT; /* Check for other errors */
 
-       if ((read_error & FAILED_CLUSTERED) && vg->cmd->ignore_clustered_vgs) {
-               read_error &= ~FAILED_CLUSTERED; /* Check for other errors */
-               log_verbose("Skipping volume group %s", vg_name);
-               *skip = 1;
+       if (read_error & FAILED_CLUSTERED) {
+               if (arg_vgnames && str_list_match_item(arg_vgnames, vg->name)) {
+                       log_error("Cannot access clustered VG %s, see lvmlockd(8).", vg->name);
+                       return 1;
+               } else {
+                       log_warn("Skipping clustered VG %s.", vg_name);
+                       *skip = 1;
+                       return 0;
+               }
        }
 
        /*
@@ -254,12 +259,6 @@ static int _ignore_vg(struct volume_group *vg, const char *vg_name,
                }
        }
 
-       if (read_error == FAILED_CLUSTERED) {
-               *skip = 1;
-               stack;  /* Error already logged */
-               return 1;
-       }
-
        if (read_error != SUCCESS) {
                *skip = 0;
                if (is_orphan_vg(vg_name))
This page took 0.056877 seconds and 5 git commands to generate.