diff options
Diffstat (limited to 'multipathd/main.c')
-rw-r--r-- | multipathd/main.c | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/multipathd/main.c b/multipathd/main.c index 8754144..5bf20bb 100644 --- a/multipathd/main.c +++ b/multipathd/main.c @@ -934,25 +934,9 @@ check_path (struct vectors * vecs, struct path * pp) */ pp->tick = conf->checkint; - if (!checker_selected(&pp->checker)) { - pathinfo(pp, conf->hwtable, DI_SYSFS); - select_checker(pp); - } - if (!checker_selected(&pp->checker)) { - condlog(0, "%s: checker is not set", pp->dev); - return; - } - /* - * Set checker in async mode. - * Honored only by checker implementing the said mode. - */ - checker_set_async(&pp->checker); - - newstate = path_offline(pp); - if (newstate == PATH_UP) - newstate = checker_check(&pp->checker); + newstate = get_state(pp, 1); - if (newstate < 0) { + if (newstate == PATH_WILD || newstate == PATH_UNCHECKED) { condlog(2, "%s: unusable path", pp->dev); pathinfo(pp, conf->hwtable, 0); return; |