[Public]

Hi @Morten Brørup

Would you need me to check this under `rte_topology` pcoming patches?

> -----Original Message-----
> From: Pavan Nikhilesh Bhagavatula <pbhagavat...@marvell.com>
> Sent: Monday, May 19, 2025 7:46 PM
> To: Morten Brørup <m...@smartsharesystems.com>
> Cc: dev <dev@dpdk.org>
> Subject: RE: rte_lcore_has_role() return value
>
> Caution: This message originated from an External Source. Use proper caution
> when opening attachments, clicking links, or responding.
>
>
> My bad, I got it confused with lcore topology patches.
>
> I will look into this.
>
> Thanks,
> Pavan.
>
> > -----Original Message-----
> > From: Pavan Nikhilesh Bhagavatula
> > Sent: Monday, May 19, 2025 7:32 PM
> > To: Morten Brørup <m...@smartsharesystems.com>; Varghese, Vipin
> > <vipin.vargh...@amd.com>
> > Cc: dev <dev@dpdk.org>
> > Subject: RE: rte_lcore_has_role() return value
> >
> > Hi Morten,
> >
> > Looks like this is meant for Vipin.
> >
> > +Vipin
> >
> > Thanks,
> > Pavan.
> >
> > > Pavan,
> > >
> > > The rte_lcore_has_role() documentation says it returns bool.
> > >
> > > Its implementation returns a true value (-1) if given a
> > > non-compliant
> > lcore_id,
> > > e.g. LCORE_ID_ANY.
> > >
> > > I think it should behave like rte_lcore_is_enabled(), i.e. return
> > > false if given a non-compliant lcore_id, e.g. LCORE_ID_ANY.
> > >
> > > Use case:
> > > A control thread in an application might or might not register
> > > itself, and the registration might not succeed.
> > >
> > > At exit of this control thread, it should unregister itself if registered.
> > >
> > > Fixing rte_lcore_has_role() as suggested would simplify the
> > > application from
> > > this:
> > >
> > >     if (rte_lcore_id() != LCORE_ID_ANY &&
> > >                     rte_eal_lcore_role(rte_lcore_id()) == ROLE_NON_EAL)
> > >             rte_thread_unregister();
> > >
> > > To this:
> > >
> > >     if (rte_lcore_has_role(rte_lcore_id(), ROLE_NON_EAL))
> > >             rte_thread_unregister();
> > >
> > > -Morten

Reply via email to