eal: fix parsing of option --lcores
authorWei Dai <wei.dai@intel.com>
Wed, 27 Jul 2016 11:23:41 +0000 (19:23 +0800)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Thu, 28 Jul 2016 16:11:13 +0000 (18:11 +0200)
The '-' in lcore set overrides cpu set of following
lcore set in the argument of EAL option --lcores.
for example --locres '0-2,(3-5)@(3,4),6@(5,6),7@(5-7)',
0-2 make lflags=1 which indeed suppress following
cpu set (3,4), (5,6) and (5-7) after @ .

Fixes: 53e54bf81700 ("eal: new option --lcores for cpu assignment")

Signed-off-by: Wei Dai <wei.dai@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
lib/librte_eal/common/eal_common_options.c

index c5bf98c..217d08b 100644 (file)
@@ -583,7 +583,7 @@ eal_parse_lcores(const char *lcores)
        const char *end = NULL;
        int offset;
        rte_cpuset_t cpuset;
-       int lflags = 0;
+       int lflags;
        int ret = -1;
 
        if (lcores == NULL)
@@ -609,6 +609,8 @@ eal_parse_lcores(const char *lcores)
                if (*lcores == '\0')
                        goto err;
 
+               lflags = 0;
+
                /* record lcore_set start point */
                lcore_start = lcores;