[dm-devel] [PATCH 10/12] multipathd: clean up set_no_path_retry

Martin Wilck mwilck at suse.com
Thu Dec 7 22:14:10 UTC 2017


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 at redhat.com>
> ---

Reviewed-by: Martin Wilck <mwilck at suse.com>

-- 
Dr. Martin Wilck <mwilck at suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)




More information about the dm-devel mailing list