[dpdk-dev] [PATCH v4 12/17] eal: set _lcore_id and _socket_id to (-1) by default

Liang, Cunming cunming.liang at intel.com
Mon Feb 9 15:24:13 CET 2015



> -----Original Message-----
> From: Olivier MATZ [mailto:olivier.matz at 6wind.com]
> Sent: Monday, February 09, 2015 4:01 AM
> To: Liang, Cunming; dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v4 12/17] eal: set _lcore_id and _socket_id to (-1)
> by default
> 
> Hi,
> 
> On 02/02/2015 03:02 AM, Cunming Liang wrote:
> > For those none EAL thread, *_lcore_id* shall always be LCORE_ID_ANY.
> > The libraries using *_lcore_id* as index need to take care.
> > *_socket_id* always be SOCKET_ID_ANY unitl the thread changes the affinity
> 
> unitl -> until
[LCM] accept.
> 
> > by rte_thread_set_affinity()
> >
> > Signed-off-by: Cunming Liang <cunming.liang at intel.com>
> > ---
> >  lib/librte_eal/bsdapp/eal/eal_thread.c   | 4 ++--
> >  lib/librte_eal/linuxapp/eal/eal_thread.c | 4 ++--
> >  2 files changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/lib/librte_eal/bsdapp/eal/eal_thread.c
> b/lib/librte_eal/bsdapp/eal/eal_thread.c
> > index 5b16302..2b3c9a8 100644
> > --- a/lib/librte_eal/bsdapp/eal/eal_thread.c
> > +++ b/lib/librte_eal/bsdapp/eal/eal_thread.c
> > @@ -56,8 +56,8 @@
> >  #include "eal_private.h"
> >  #include "eal_thread.h"
> >
> > -RTE_DEFINE_PER_LCORE(unsigned, _lcore_id);
> > -RTE_DEFINE_PER_LCORE(unsigned, _socket_id);
> > +RTE_DEFINE_PER_LCORE(unsigned, _lcore_id) = (unsigned)LCORE_ID_ANY;
> > +RTE_DEFINE_PER_LCORE(unsigned, _socket_id) = (unsigned)SOCKET_ID_ANY;
> >  RTE_DEFINE_PER_LCORE(rte_cpuset_t, _cpuset);
> >
> >  /*
> > diff --git a/lib/librte_eal/linuxapp/eal/eal_thread.c
> b/lib/librte_eal/linuxapp/eal/eal_thread.c
> > index 6eb1525..ab94e20 100644
> > --- a/lib/librte_eal/linuxapp/eal/eal_thread.c
> > +++ b/lib/librte_eal/linuxapp/eal/eal_thread.c
> > @@ -57,8 +57,8 @@
> >  #include "eal_private.h"
> >  #include "eal_thread.h"
> >
> > -RTE_DEFINE_PER_LCORE(unsigned, _lcore_id);
> > -RTE_DEFINE_PER_LCORE(unsigned, _socket_id);
> > +RTE_DEFINE_PER_LCORE(unsigned, _lcore_id) = (unsigned)LCORE_ID_ANY;
> > +RTE_DEFINE_PER_LCORE(unsigned, _socket_id) = (unsigned)SOCKET_ID_ANY;
> >  RTE_DEFINE_PER_LCORE(rte_cpuset_t, _cpuset);
> 
> As far as I understand, now a rte_lcore_id() can return LCORE_ID_ANY.
> This should be modified in the rte_lcore_id() API comments.
> 
> Same for rte_socket_id().
[LCM] accept.
> 
> I also wonder if the API of these functions should be modified to
> return an int instead of an unsigned as LCORE_ID_ANY is -1.
[LCM] I prefer not change the API definition. (unsigned)LCORE_ID_ANY already used before.
> 
> Regards,
> Olivier


More information about the dev mailing list