Search
j0ke.net Open Build Service
>
Projects
>
GFS
>
multipath-tools
> multipath-tools-undo-path-ghost-handling
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File multipath-tools-undo-path-ghost-handling of Package multipath-tools
tree 702f7edf04187cfbb28ef3c23e454b4a5dbaa9fb parent d3037fcc906572f7e97b4fa29ac417c29e324de4 author Hannes Reinecke <hare@suse.de> 1183455169 +0200 committer Hannes Reinecke <hare@suse.de> 1183455169 +0200 libmultipath: Undo path priority changes While debugging the AVT mode support, I found that multipath was not selecting the preferred path many a times (inlcuding the failback scenarios). Checked the behavior in the rdac and it was also not behaving properly. Added a priority callout function and the expected behavior was still not seen. More debugging revealed that the changes I made to work in the ghost mode was wrong. Reverting those changes made the multipath behave properly. Signed-off-by: Chandra Seetharaman <sekharan@us.ibm.com> Signed-off-by: Hannes Reinecke <hare@suse.de> 6c3b4b32708a97d276a126a1f152b1e4471136a0 libmultipath/discovery.c | 2 +- libmultipath/switchgroup.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c index 8f5aedb..10141f5 100644 --- a/libmultipath/discovery.c +++ b/libmultipath/discovery.c @@ -709,7 +709,7 @@ pathinfo (struct path *pp, vector hwtable, int mask) * been successfully obtained before. */ if (mask & DI_PRIO && - (pp->state == PATH_UP || pp->priority == PRIO_UNDEF)) + (pp->state != PATH_DOWN || pp->priority == PRIO_UNDEF)) get_prio(pp); if (mask & DI_WWID && !strlen(pp->wwid)) diff --git a/libmultipath/switchgroup.c b/libmultipath/switchgroup.c index 9b84bc2..757543f 100644 --- a/libmultipath/switchgroup.c +++ b/libmultipath/switchgroup.c @@ -28,7 +28,7 @@ select_path_group (struct multipath * mpp) priority = 0; vector_foreach_slot (pgp->paths, pp, j) { - if (pp->state == PATH_UP) + if (pp->state != PATH_DOWN) priority += pp->priority; } pgp->priority = priority;