@@ -450,8 +450,12 @@ configure (struct config *conf, enum mpath_cmds cmd,
* Paths listed in the wwids file are always considered valid.
*/
if (cmd == CMD_VALID_PATH) {
- if ((!find_multipaths_on(conf) && ignore_wwids(conf)) ||
- check_wwids_file(refwwid, 0) == 0)
+ if (is_failed_wwid(refwwid) == WWID_IS_FAILED) {
+ r = 1;
+ goto print_valid;
+ } else if ((!find_multipaths_on(conf) &&
+ ignore_wwids(conf)) ||
+ check_wwids_file(refwwid, 0) == 0)
r = 0;
if (r == 0 ||
!find_multipaths_on(conf) || !ignore_wwids(conf)) {
If a WWID has been marked as "failed", don't treat it as "valid multipath device path" in multipath -c/-u. This is key to achieve consistency between multipathd and udev rule processing. Signed-off-by: Martin Wilck <mwilck@suse.com> --- multipath/main.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)