From mboxrd@z Thu Jan 1 00:00:00 1970 From: Martin Wilck Subject: [PATCH v4 13/20] multipath -u: treat failed wwids as invalid Date: Wed, 4 Apr 2018 18:16:20 +0200 Message-ID: <20180404161627.6244-14-mwilck@suse.com> References: <20180404161627.6244-1-mwilck@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20180404161627.6244-1-mwilck@suse.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com To: Christophe Varoqui , Benjamin Marzinski Cc: Julian Andres Klode , dm-devel@redhat.com, Martin Wilck List-Id: dm-devel.ids 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 --- multipath/main.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/multipath/main.c b/multipath/main.c index 59a72ed..942caf4 100644 --- a/multipath/main.c +++ b/multipath/main.c @@ -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_on(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_on(conf)) || + check_wwids_file(refwwid, 0) == 0) r = 0; if (r == 0 || !find_multipaths_on(conf) || -- 2.16.1