|
|
|
---
|
|
|
|
libmultipath/configure.c | 7 +++++--
|
|
|
|
1 file changed, 5 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
Index: multipath-tools-130222/libmultipath/configure.c
|
|
|
|
===================================================================
|
|
|
|
--- multipath-tools-130222.orig/libmultipath/configure.c
|
|
|
|
+++ multipath-tools-130222/libmultipath/configure.c
|
|
|
|
@@ -257,7 +257,7 @@ extern int
|
|
|
|
setup_map (struct multipath * mpp, char * params, int params_size)
|
|
|
|
{
|
|
|
|
struct pathgroup * pgp;
|
|
|
|
- int i;
|
|
|
|
+ int i, old_nr_active;
|
|
|
|
|
|
|
|
/*
|
|
|
|
* don't bother if devmap size is unknown
|
|
|
|
@@ -311,8 +311,12 @@ setup_map (struct multipath * mpp, char
|
|
|
|
if (mpp->pgpolicyfn && mpp->pgpolicyfn(mpp))
|
|
|
|
return 1;
|
|
|
|
|
|
|
|
+ old_nr_active = mpp->nr_active;
|
|
|
|
mpp->nr_active = pathcount(mpp, PATH_UP) + pathcount(mpp, PATH_GHOST);
|
|
|
|
|
|
|
|
+ if (mpp->nr_active && !old_nr_active)
|
|
|
|
+ mpp->force_udev_reload = 1;
|
|
|
|
+
|
|
|
|
/*
|
|
|
|
* ponders each path group and determine highest prio pg
|
|
|
|
* to switch over (default to first)
|
|
|
|
@@ -445,7 +449,6 @@ select_action (struct multipath * mpp, v
|
|
|
|
mpp->alias);
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
- mpp->force_udev_reload = !pathcount(mpp, PATH_WILD);
|
|
|
|
if (cmpp->size != mpp->size) {
|
|
|
|
mpp->force_udev_reload = 1;
|
|
|
|
mpp->action = ACT_RESIZE;
|