@@ -74,13 +74,12 @@ assemble_map (struct multipath * mp, char * params, int len)
* We have to set 'queue_if_no_path' here even
* to avoid path failures during map reload.
*/
- if (mp->no_path_retry == NO_PATH_RETRY_UNDEF ||
- mp->no_path_retry == NO_PATH_RETRY_FAIL) {
+ if (mp->no_path_retry == NO_PATH_RETRY_FAIL) {
/* remove queue_if_no_path settings */
condlog(3, "%s: remove queue_if_no_path from '%s'",
mp->alias, mp->features);
remove_feature(&f, no_path_retry);
- } else {
+ } else if (mp->no_path_retry != NO_PATH_RETRY_UNDEF) {
add_feature(&f, no_path_retry);
}
if (mp->retain_hwhandler == RETAIN_HWHANDLER_ON)
It is wrong to remove the queue_if_no_path feature if no_path_retry is unset. Rather, in this case the feature should neither be added nor removed. Signed-off-by: Martin Wilck <mwilck@suse.com> --- libmultipath/dmparser.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)