multipath: check failed path dmstate in check_path
authorBenjamin Marzinski <bmarzins@redhat.com>
Thu, 7 Dec 2017 18:49:05 +0000 (12:49 -0600)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Sat, 13 Jan 2018 09:16:05 +0000 (10:16 +0100)
commit7bc39dfe834c2a3487c368c8e9797e45e30ce4f1
tree86d80b296f692c48fdeb751a8b310ef743cc7ac7
parent0f850db7fceb6b2bf4968f3831efd250c17c6138
multipath: check failed path dmstate in check_path

If a path's checker state is down before and after a path check, but the
path's dmstate is active, mutipath won't update the dmstate. It only
updates the dmstate when the path first fails.  This can cause the
kernel to try known faulty paths, if the multipath device was reloaded
outside of multipathd.  check_path() already checks for and deals with a
similar case where the path's checker state is up before and after a
path check, but the dmstate is failed.  It should do the same thing for
faulty paths.

Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
multipathd/main.c