Message ID | 20180319150155.5363-5-mwilck@suse.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Delegated to: | christophe varoqui |
Headers | show |
On Mon, Mar 19, 2018 at 04:01:39PM +0100, Martin Wilck wrote: > Previously, if find_multipaths was set, devices listed in the WWIDs file > weren't classified as multipath members by "multipath -u -i" unless they also > met the "find_multipaths" criteria (at least two paths, or existing map with > this WWID). Now we classify all paths in the WWIDs file as multipath members, too. > > The rationale for this patch is to match the logic that multipathd applies > by default (i.e. without "-n"). > Still calling the option ignore_wwids is a little confusing when you aren't actually ignoring the wwids file (you're just not requiring it), but at any rate... Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com> > Signed-off-by: Martin Wilck <mwilck@suse.com> > --- > multipath/main.c | 19 +++++++++++-------- > 1 file changed, 11 insertions(+), 8 deletions(-) > > diff --git a/multipath/main.c b/multipath/main.c > index 20f46acd924a..4d45df3cdb83 100644 > --- a/multipath/main.c > +++ b/multipath/main.c > @@ -437,16 +437,19 @@ configure (struct config *conf, enum mpath_cmds cmd, > * set, you need to actually check if there are two available > * paths to determine if this path should be multipathed. To > * do this, we put off the check until after discovering all > - * the paths */ > - if (cmd == CMD_VALID_PATH && > - (!conf->find_multipaths || !conf->ignore_wwids)) { > - if (conf->ignore_wwids || > + * the paths. > + * Paths listed in the wwids file are always considered valid. > + */ > + if (cmd == CMD_VALID_PATH) { > + if ((!conf->find_multipaths && conf->ignore_wwids) || > check_wwids_file(refwwid, 0) == 0) > r = 0; > - > - printf("%s %s a valid multipath device path\n", > - devpath, r == 0 ? "is" : "is not"); > - goto out; > + if (r == 0 || > + !conf->find_multipaths || !conf->ignore_wwids) { > + printf("%s %s a valid multipath device path\n", > + devpath, r == 0 ? "is" : "is not"); > + goto out; > + } > } > } > > -- > 2.16.1 -- dm-devel mailing list dm-devel@redhat.com https://www.redhat.com/mailman/listinfo/dm-devel
diff --git a/multipath/main.c b/multipath/main.c index 20f46acd924a..4d45df3cdb83 100644 --- a/multipath/main.c +++ b/multipath/main.c @@ -437,16 +437,19 @@ configure (struct config *conf, enum mpath_cmds cmd, * set, you need to actually check if there are two available * paths to determine if this path should be multipathed. To * do this, we put off the check until after discovering all - * the paths */ - if (cmd == CMD_VALID_PATH && - (!conf->find_multipaths || !conf->ignore_wwids)) { - if (conf->ignore_wwids || + * the paths. + * Paths listed in the wwids file are always considered valid. + */ + if (cmd == CMD_VALID_PATH) { + if ((!conf->find_multipaths && conf->ignore_wwids) || check_wwids_file(refwwid, 0) == 0) r = 0; - - printf("%s %s a valid multipath device path\n", - devpath, r == 0 ? "is" : "is not"); - goto out; + if (r == 0 || + !conf->find_multipaths || !conf->ignore_wwids) { + printf("%s %s a valid multipath device path\n", + devpath, r == 0 ? "is" : "is not"); + goto out; + } } }
Previously, if find_multipaths was set, devices listed in the WWIDs file weren't classified as multipath members by "multipath -u -i" unless they also met the "find_multipaths" criteria (at least two paths, or existing map with this WWID). Now we classify all paths in the WWIDs file as multipath members, too. The rationale for this patch is to match the logic that multipathd applies by default (i.e. without "-n"). Signed-off-by: Martin Wilck <mwilck@suse.com> --- multipath/main.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-)