queue-length/service-time path selectors map parser fix
authorKiyoshi Ueda <k-ueda@ct.jp.nec.com>
Fri, 18 Sep 2009 01:37:53 +0000 (10:37 +0900)
committerChristophe Varoqui <christophe.varoqui@free.fr>
Sun, 20 Sep 2009 08:30:35 +0000 (10:30 +0200)
Actual device configuration seems to be working fine, but the getting
information from the configured device seems to be failing due to
table parsing problem in disassemble_map().

I guess the attached patch works around the problem. Please try it.
Please note that this patch may *NOT* be a complete fix.
Some more codes for new dynamic load balancers may be needed.

libmultipath/dmparser.c

index 7169467a2cdfaa27b34e12800ab807406cc58653..1ef3aadae2b489a710ca33d5b956a5e8dab7131c 100644 (file)
@@ -323,8 +323,10 @@ disassemble_map (vector pathvec, char * params, struct multipath * mpp)
                                                        def_minio /= pp->priority;
 
                                                FREE(word);
-                                       } else
+                                       } else {
+                                               p += get_word(p, NULL);
                                                def_minio = 0;
+                                       }
 
                                        if (def_minio != mpp->minio)
                                                mpp->minio = def_minio;