Set priority to '0' for PATH_BLOCKED or PATH_DOWN
authorHannes Reinecke <hare@suse.de>
Fri, 15 Nov 2013 10:29:33 +0000 (11:29 +0100)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Sun, 17 Nov 2013 17:26:56 +0000 (18:26 +0100)
When a path is down or blocked we need to initialize the priority
to '0'. Otherwise multipathd will discard the maps during reload
and fail to start if all paths are temporarily down.

Signed-off-by: Hannes Reinecke <hare@suse.de>
libmultipath/discovery.c

index 04e3ead..3292358 100644 (file)
@@ -1117,6 +1117,9 @@ pathinfo (struct path *pp, vector hwtable, int mask)
                } else {
                        condlog(3, "%s: path inaccessible", pp->dev);
                        pp->chkrstate = pp->state = path_state;
+                       if (path_state == PATH_PENDING ||
+                           path_state == PATH_DOWN)
+                               pp->priority = 0;
                }
        }