Message ID | 20180413220015.7032-5-mwilck@suse.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Delegated to: | christophe varoqui |
Headers | show |
On Fri, 13 Apr 2018 23:59:57 +0200 Martin Wilck <mwilck@suse.com> 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"). > > 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(-) > Reviewed-by: Hannes Reinecke <hare@suse.com> Cheers, Hannes -- 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 d26c7444..ba837710 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; + } } }