libmultipath: implement find_multipaths_timeout
authorMartin Wilck <mwilck@suse.com>
Fri, 13 Apr 2018 22:00:08 +0000 (00:00 +0200)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Fri, 11 May 2018 08:48:46 +0000 (10:48 +0200)
commit5a342014622a035218b866893af917fb0e5cdd31
treeba018a662f21e21d78696b8f84909104a4106e5c
parent169593b8e0404cbf1d2f22d164634cd39b14e3e3
libmultipath: implement find_multipaths_timeout

This makes the timeout for "find_multipaths smart" configurable.
If the timeout has a negative value (default), it's applied only
to "known" hardware which is either in the hwtable or in a "device" section in
multipath.conf. For typical non-multipath hardware, which is not in the
hwtable, a short timeout of 1s is used, so that boot delays caused by
pointlessly waiting e.g. for SATA devices will be minimal.

It's expected that a "reasonable" timeout value depends less on the storage
hardware itself but on other properties of the data center such as network
latencies or distances. find_multipaths_timeout is therefore just a "defaults"
section setting.

Signed-off-by: Martin Wilck <mwilck@suse.com>
Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
libmultipath/config.h
libmultipath/defaults.h
libmultipath/dict.c
libmultipath/propsel.c
libmultipath/propsel.h
libmultipath/structs.h
multipath/multipath.conf.5