On Thu, 2017-12-07 at 12:49 -0600, Benjamin Marzinski wrote: > set_no_path_retry() was always updating the queue_if_no_path setting, > even if it was unnecessary. This caused problems when no_path_retry > was > set to a number, where any time __setup_multipath() was called with > reset, queuing automatically restarted, even if there were no usable > paths. > > Instead, set_no_path_retry() should just fix the queueing if it is > set > to an incorrect value. This is simple to detect if no_path_retry is > set > to "queue" or "fail". When it is set to a number, multipathd needs > to > see if there are usable paths. If so, queueing should be enabled. If > not, queueing may be either enabled or disabled, but if it is enabled > and the device isn't already in recovery mode, it should be. > > Also, calling dm_map_present() is pointless in __setup_multipath(), > since the existence of the map was just checked in dm_get_info(). > > Signed-off-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx> > --- Reviewed-by: Martin Wilck <mwilck@xxxxxxxx> -- Dr. Martin Wilck <mwilck@xxxxxxxx>, Tel. +49 (0)911 74053 2107 SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel