the tail blank after a group of lcore or cpu set will make check of its end character fail. for example: --lcores '(0-3)@(0-3) ,(4-5)@(4-5)', the next character after cpu set (0-3) is not ',' or '\0', which fail the check in eal_parse_lcores( ).
Fixes: 53e54bf81700 ("eal: new option --lcores for cpu assignment") Signed-off-by: Wei Dai <wei.dai at intel.com> --- lib/librte_eal/common/eal_common_options.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c index 217d08b..1a1bab3 100644 --- a/lib/librte_eal/common/eal_common_options.c +++ b/lib/librte_eal/common/eal_common_options.c @@ -530,6 +530,13 @@ eal_parse_set(const char *input, uint16_t set[], unsigned num) str = end + 1; } while (*end != '\0' && *end != ')'); + /* + * to avoid failure that tail blank makes end character check fail + * in eal_parse_lcores( ) + */ + while (isblank(*str)) + str++; + return str - input; } -- 2.5.5