(replying this time to the list) On 25/04/2020 17:04, Thomas Monjalon wrote: > 16/04/2020 13:00, Kevin Laatz: >> This patch adds CPU flags which will enable the detection of ISA >> features available on more recent x86 based CPUs. > [...] >> --- a/devtools/libabigail.abignore >> +++ b/devtools/libabigail.abignore >> +; Ignore this enum update as it should not be allocated by the application >> +[suppress_type] >> + type_kind = enum >> + name = rte_cpu_flag_t >> + changed_enumerators = RTE_CPUFLAG_NUMFLAGS > > The justification is not correct. > The application is allowed to use RTE_CPUFLAG_NUMFLAGS in array allocation. > But no API is returning a CPU flag, so the new flags will remain unknown > to the application. > > However, there is a behaviour change: > The functions rte_cpu_get_flag_name() and rte_cpu_get_flag_enabled() > will now accept new values, which were previously considered as an error. > Is it an ABI breakage? I would say no.
We saw something similar with the Cryptodev's rte_crypto_sym_xform_type also. Libabigail appears to be particularly sensitive to changes to enumerations. Leaving it to the user to decide if there is a problem. I am seeing a bit of weirdness though between versions of libabigail. 1.7.1 seems to fine with the change, however 1.2 is reporting an issue. Kevin - what version are you using? > > PS: Who is REALLY maintaining the ABI? > We really miss someone who carefully check all these things, > and take care of the doc and tooling. > > I would say that I am missing these changes to libabigail.ignore, which would be useful. Should we consolidate the ABI Policy and ABI Versioning sections of the MAINTAINERS file?