[PATCH v1 0/5] prefix lcore role enum values

David Marchand david.marchand at redhat.com
Mon Jun 22 10:18:41 CEST 2026


Hello all,

On Mon, 22 Jun 2026 at 03:23, lihuisong (C) <lihuisong at huawei.com> wrote:
> On 6/19/2026 10:03 AM, Stephen Hemminger wrote:
> > On Wed, 17 Jun 2026 13:48:37 +0200
> > Morten Brørup <mb at smartsharesystems.com> wrote:
> >
> >>> From: Huisong Li [mailto:lihuisong at huawei.com]
> >>> Sent: Wednesday, 17 June 2026 12.28
> >>>
> >>> Add the RTE_LCORE_ prefix to the lcore role enum values in
> >>> rte_lcore_role_t
> >>> to follow DPDK naming conventions.
> >>>
> >>> - ROLE_RTE      -> RTE_LCORE_ROLE_RTE
> >>> - ROLE_OFF      -> RTE_LCORE_ROLE_OFF
> >>> - ROLE_SERVICE  -> RTE_LCORE_ROLE_SERVICE
> >>> - ROLE_NON_EAL  -> RTE_LCORE_ROLE_NON_EAL
> >>>
> >>> Old names are kept as macros aliasing to the new names to preserve
> >>> backward compatibility.
> >>>
> >> Series-Acked-by: Morten Brørup <mb at smartsharesystems.com>
> >>
> > The problem with this patch it causes build failures now with abi diff.
> >
> > Example build log...
> >
> >
> > 2 functions with some indirect sub-type change:
> >
> >
> >
> >
> >
> >   [C] 'function rte_lcore_role_t rte_eal_lcore_role(unsigned int)' at eal_common_lcore.c:74:1 has some indirect sub-type changes:
> >
> >   return type changed:
> >
> >   type size hasn't changed
> >
> >   4 enumerator deletions:
> >
> >   'rte_lcore_role_t::ROLE_RTE' value '0'
> >
> >   'rte_lcore_role_t::ROLE_OFF' value '1'
> >
> >   'rte_lcore_role_t::ROLE_SERVICE' value '2'
> >
> >   'rte_lcore_role_t::ROLE_NON_EAL' value '3'
> >
> >   4 enumerator insertions:
> >
> >   'rte_lcore_role_t::RTE_LCORE_ROLE_RTE' value '0'
> >
> >   'rte_lcore_role_t::RTE_LCORE_ROLE_OFF' value '1'
> >
> >   'rte_lcore_role_t::RTE_LCORE_ROLE_SERVICE' value '2'
> >
> >   'rte_lcore_role_t::RTE_LCORE_ROLE_NON_EAL' value '3'
> >
> >
> >
> >
> >
> >   [C] 'function int rte_lcore_has_role(unsigned int, rte_lcore_role_t)' at eal_common_lcore.c:85:1 has some indirect sub-type changes:
> >
> >   parameter 2 of type 'enum rte_lcore_role_t' has sub-type changes:
> >
> >   enum type 'enum rte_lcore_role_t' changed at rte_lcore.h:33:1, as reported earlier
> >
> >
> >
> >
> >
> >
> >
> > Error: ABI issue reported for abidiff --suppr /home/runner/work/dpdk/dpdk/devtools/libabigail.abignore --no-added-syms --headers-dir1 reference/usr/local/include --headers-dir2 install/usr/local/include reference/usr/local/lib/librte_eal.so.26.1 install/usr/local/lib/librte_eal.so.26.2
> We just came back from the Dragon Boat Festival.
> I also received this ABI change warning. But I didn't have any good
> ideas yet.
> Thanks for helping to handle this.
> Sorry for the inconvenience.

There is nothing broken from a ABI pov.
This is a limitation in earlier versions of libabigail.
I can't reproduce with libabigail 2.9 (update in progress as I see
2.10 is available now).

I think it was solved in libabigail 2.8
(https://sourceware.org/git/?p=libabigail.git;a=commit;h=6f5f91564bdd).

If we want to go with the enum renaming before 26.11, bumping
libabigail to 2.10 in the CI is an option (latest upstream version,
and this is the version in f43 and f44).
I tried it in GHA:
https://github.com/david-marchand/dpdk/actions/runs/27937595115/job/82662953500


-- 
David Marchand



More information about the dev mailing list