[dpdk-dev] [PATCH 1/1] ip_pipeline: fixed parsing cpu cores
Maciej Gajdzica
maciejx.t.gajdzica at intel.com
Tue Jul 21 16:39:00 CEST 2015
This patch fixes parsing value of core variable in pipeline config.
Before not every combination of cores (c), sockets (s) and
hyperthreading (h) was parsed correctly.
Signed-off-by: Maciej Gajdzica <maciejx.t.gajdzica at intel.com>
---
examples/ip_pipeline/config_parse.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/examples/ip_pipeline/config_parse.c b/examples/ip_pipeline/config_parse.c
index 361bf8a..c9b78f9 100644
--- a/examples/ip_pipeline/config_parse.c
+++ b/examples/ip_pipeline/config_parse.c
@@ -386,14 +386,14 @@ parse_pipeline_core(uint32_t *socket,
switch (type) {
case 's':
case 'S':
- if (s_parsed)
+ if (s_parsed || c_parsed || h_parsed)
return -EINVAL;
s_parsed = 1;
next++;
break;
case 'c':
case 'C':
- if (c_parsed)
+ if (c_parsed || h_parsed)
return -EINVAL;
c_parsed = 1;
next++;
@@ -423,7 +423,10 @@ parse_pipeline_core(uint32_t *socket,
num[num_len] = *next;
}
- if (num_len == 0 && type != 'h')
+ if (num_len == 0 && type != 'h' && type != 'H')
+ return -EINVAL;
+
+ if (num_len != 0 && (type == 'h' || type == 'H'))
return -EINVAL;
num[num_len] = '\0';
@@ -438,9 +441,6 @@ parse_pipeline_core(uint32_t *socket,
case 'c':
case 'C':
c = val;
- if (type == 'C' && *next != '\0')
- return -EINVAL;
-
break;
case 'h':
case 'H':
--
1.7.9.5
More information about the dev
mailing list