[dm-devel] [PATCH v2 22/23] multipathd: update path group prio in check_path
Martin Wilck
mwilck at suse.com
Mon Mar 5 23:15:06 UTC 2018
The previous patch "libmultipath: don't update path groups when printing"
removed the call to path_group_prio_update() in the printing code path.
To compensate for that, recalculate path group prio also when it's not
strictly necessary (i.e. if failback "manual" is set).
Signed-off-by: Martin Wilck <mwilck at suse.com>
---
multipathd/main.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/multipathd/main.c b/multipathd/main.c
index 465a1e291226..4abdd8f071c3 100644
--- a/multipathd/main.c
+++ b/multipathd/main.c
@@ -252,8 +252,9 @@ need_switch_pathgroup (struct multipath * mpp, int refresh)
struct path * pp;
unsigned int i, j;
struct config *conf;
+ int bestpg;
- if (!mpp || mpp->pgfailback == -FAILBACK_MANUAL)
+ if (!mpp)
return 0;
/*
@@ -272,8 +273,11 @@ need_switch_pathgroup (struct multipath * mpp, int refresh)
if (!mpp->pg || VECTOR_SIZE(mpp->paths) == 0)
return 0;
- mpp->bestpg = select_path_group(mpp);
+ bestpg = select_path_group(mpp);
+ if (mpp->pgfailback == -FAILBACK_MANUAL)
+ return 0;
+ mpp->bestpg = bestpg;
if (mpp->bestpg != mpp->nextpg)
return 1;
--
2.16.1
More information about the dm-devel
mailing list