multipath: fix select_no_path_retry for flushing devices.
Benjamin Marzinski
maintainerPATCH 1/1 multipath: fix select_no_path_retry for flushing devices.
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 <[email protected]>
--- libmultipath/propsel.c | 1 + 1 file changed, 1 insertion(+)
libmultipath/propsel.c +1 -0
@@ -415,6 +415,7 @@ select_no_path_retry(struct multipath *mif (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;
Christophe Varoqui
AppliedQuoted 3 lines · Benjamin Marzinski
The
select_no_path_retrycode was falling through if a flush was in progress, and so it wasn't honoringflush_on_last_del.
Applied.
Quoted 17 lines
Signed-off-by Benjamin Marzinski <[email protected]>--- libmultipath/propsel.c | 1 + 1 file changed, 1 insertion(+)Index:
multipath-tools-120403/libmultipath/propsel.c
===================================================================libmultipath/propsel.c +1
-0@@ -415,6 +415,7 @@ select_no_path_retry(struct multipath *mif (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;