[dpdk-dev] [PATCH v2] app/testpmd: support non contiguous socket ids
Shahaf Shuler
shahafs at mellanox.com
Sun May 7 08:06:03 CEST 2017
Saturday, May 6, 2017 4:41 AM, Wu, Jingjing:
> >
> > The test assumes the socket ids are contiguous. This is not
> > necessarily the case on all servers and may cause mempool creation to fail.
> >
> > Fixing it by detecting the list of valid socket ids and use it for the
> > mempool creation.
> >
> > Fixes: 7acf894d07d1 ("app/testpmd: detect numa socket count")
> >
> > CC: stable at dpdk.org
> > Signed-off-by: Shahaf Shuler <shahafs at mellanox.com>
> > ---
> > on v2:
> > * fix minor typo on commit message : be->by.
> > ---
> > app/test-pmd/parameters.c | 38 ++++++++++++++++++++++++++++-----
> -----
> > app/test-pmd/testpmd.c | 38 +++++++++++++++++++++++++++++------
> ---
> > app/test-pmd/testpmd.h | 4 +++-
> > 3 files changed, 60 insertions(+), 20 deletions(-)
> >
[..]
> > diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index
> > dfe64427d..a556a8aff 100644
> > --- a/app/test-pmd/testpmd.c
> > +++ b/app/test-pmd/testpmd.c
[..]
> > +/*
> > * Setup default configuration.
> > */
> > static void
> > @@ -388,12 +405,14 @@ set_default_fwd_lcores_config(void)
> >
> > nb_lc = 0;
> > for (i = 0; i < RTE_MAX_LCORE; i++) {
> > - sock_num = rte_lcore_to_socket_id(i) + 1;
> > - if (sock_num > max_socket) {
> > - if (sock_num > RTE_MAX_NUMA_NODES)
> > - rte_exit(EXIT_FAILURE, "Total sockets
> greater
> > than %u\n", RTE_MAX_NUMA_NODES);
> > - max_socket = sock_num;
> > + sock_num = rte_lcore_to_socket_id(i);
> +1 is missed?
I don't think so.
On previous implementation this logic was meant to find the max_socket.
max_socket was the first invalid socket_id and was used, for example :
if (socket_id >= max_socket) {
or
for (i = 0; i < max_socket; i++)
now, on above logic, we list the valid socket id. Therefore rte_lcore_to_socket_id return a valid id and not need to add 1.
More information about the dev
mailing list