multipath: fix select_no_path_retry for flushing devices.
authorBenjamin Marzinski <bmarzins@redhat.com>
Fri, 18 May 2012 22:33:26 +0000 (17:33 -0500)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Sun, 20 May 2012 10:33:09 +0000 (12:33 +0200)
The select_no_path_retry code was falling through if a flush was
in progress, and so it wasn't honoring flush_on_last_del.

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

index 9c06203..5548ca1 100644 (file)
@@ -415,6 +415,7 @@ select_no_path_retry(struct multipath *mp)
        if (mp->flush_on_last_del == FLUSH_IN_PROGRESS) {
                condlog(0, "flush_on_last_del in progress");
                mp->no_path_retry = NO_PATH_RETRY_FAIL;
+               return 0;
        }
        if (mp->mpe && mp->mpe->no_path_retry != NO_PATH_RETRY_UNDEF) {
                mp->no_path_retry = mp->mpe->no_path_retry;