On Fri, Apr 10, 2020 at 01:04:20AM +0200, Andrzej Ostruszka wrote: > On 4/5/20 10:56 AM, jer...@marvell.com wrote: > > From: Nithin Dabilpuram <ndabilpu...@marvell.com> > > > > Add graph based l3fwd application skeleton with cmdline > > parsing support inline with normal l3fwd. > > > > Signed-off-by: Nithin Dabilpuram <ndabilpu...@marvell.com> > [...] > > +static int > > +parse_config(const char *q_arg) > > +{ > > + enum fieldnames { FLD_PORT = 0, FLD_QUEUE, FLD_LCORE, _NUM_FLD }; > > + unsigned long int_fld[_NUM_FLD]; > > + const char *p, *p0 = q_arg; > > + char *str_fld[_NUM_FLD]; > > + uint32_t size; > > + char s[256]; > > + char *end; > > + int i; > > + > > + nb_lcore_params = 0; > > + > > + while ((p = strchr(p0, '(')) != NULL) { > > + ++p; > > + p0 = strchr(p, ')'); > > + if (p0 == NULL) > > + return -1; > > + > > + size = p0 - p; > > + if (size >= sizeof(s)) > > + return -1; > > + > > + snprintf(s, sizeof(s), "%.*s", size, p); > > Could I ask to make this function to be the same as final versions of > l2fwd and l2fwd-event that were recently under review? There were > couple simple comments there and they apply here also.
Ok. I'll sync up fixes from l2fwd-event to this function in v5. > > > + if (rte_strsplit(s, sizeof(s), str_fld, _NUM_FLD, ',') != > > + _NUM_FLD) > > + return -1; > > + for (i = 0; i < _NUM_FLD; i++) { > > + errno = 0; > > + int_fld[i] = strtoul(str_fld[i], &end, 0); > > + if (errno != 0 || end == str_fld[i] || int_fld[i] > 255) > > + return -1; > > + } > > + if (nb_lcore_params >= MAX_LCORE_PARAMS) { > > + printf("Exceeded max number of lcore params: %hu\n", > > + nb_lcore_params); > > + return -1; > > + } > > + lcore_params_array[nb_lcore_params].port_id = > > + (uint8_t)int_fld[FLD_PORT]; > > + lcore_params_array[nb_lcore_params].queue_id = > > + (uint8_t)int_fld[FLD_QUEUE]; > > + lcore_params_array[nb_lcore_params].lcore_id = > > + (uint8_t)int_fld[FLD_LCORE]; > > + ++nb_lcore_params; > > + } > > + lcore_params = lcore_params_array; > > + > > + return 0; > > +} > > With regards > Andrzej Ostruszka