[dpdk-dev] [PATCH v5 2/2] cryptodev: version cryptodev info get function

Ray Kinsella mdr at ashroe.eu
Mon May 11 18:09:20 CEST 2020


Seems to be an issues on my side (see below).
Everything that the ABI Compliance Checker 2.3 complains about has already been reported and suppressed in libabigail.ignore.

Suggest you use libabigail going forward. 


Oddly enough

Fedora 31 / ABI Compliance Checker 2.3
[root at xyz abi-check]# abi-compliance-checker -l librte_cryptodev.so -old 24cd1b529/librte_cryptodev.so.dump -new 26c1ec175/librte_cryptodev.so.dumpPreparing, please wait ...
Comparing ABIs ...
Comparing APIs ...
Creating compatibility report ...
Binary compatibility: 100%
Source compatibility: 100%
Total binary compatibility problems: 0, warnings: 0
Total source compatibility problems: 0, warnings: 0
Report: compat_reports/librte_cryptodev.so/24cd1b529_to_26c1ec175/compat_report.html

Ubuntu 18.04/ ABI Compliance Checker 2.2

root at abc:/build/dpdk-next-crypto/abi-check# abi-compliance-checker -l librte_cryptodev.so -old 6ef23d92d/librte_cryptodev.so.dump -new 6488cc1cf/librte_cryptodev.so.dump
Preparing, please wait ...
Comparing ABIs ...
Comparing APIs ...
Creating compatibility report ...
Binary compatibility: 99.4%
Source compatibility: 100%
Total binary compatibility problems: 1, warnings: 1
Total source compatibility problems: 0, warnings: 0
Report: compat_reports/librte_cryptodev.so/6ef23d92d_to_6488cc1cf/compat_report.html

Ray K

On 11/05/2020 09:18, Akhil Goyal wrote:
> Hi Ray,
> 
> Previously, I only ran the script for the 2 patches.
> 
> ./devtools/validate-abi.sh <commit id previous to these two patches> HEAD
> 
> However when I run for v20.02 and HEAD, the list is quite big. I believe most of them are either experimental or internal PMD. But cryptodev is still there.
> 
> NOTICE: abi-compliance-checker returned 1
> NOTICE: ABI may be incompatible, check reports/logs for details.
> NOTICE: Incompatible list:  librte_bbdev.so librte_common_iavf.so librte_common_octeontx2.so librte_cryptodev.so librte_eal.so librte_efd.so librte_eventdev.so librte_hash.so librte_ipsec.so librte_meter.so librte_pdump.so librte_pmd_crypto_scheduler.so librte_pmd_dpaa2_sec.so librte_pmd_dpaa_sec.so librte_pmd_ring.so librte_ring.so librte_vhost.so
> 
> Regards,
> Akhil
> 
>> -----Original Message-----
>> From: Ray Kinsella <mdr at ashroe.eu>
>> Sent: Monday, May 11, 2020 1:18 PM
>> To: Akhil Goyal <akhil.goyal at nxp.com>; Arek Kusztal
>> <arkadiuszx.kusztal at intel.com>; dev at dpdk.org
>> Cc: fiona.trahe at intel.com; ray.kinsella at intel.com; bruce.richardson at intel.com
>> Subject: Re: [dpdk-dev] [PATCH v5 2/2] cryptodev: version cryptodev info get
>> function
>>
>> Hi Akhil,
>>
>> So 1st thing is that this that validate-abi uses "ABI Compliance Checker",
>> which does not use libabigail.ignore.
>>
>> So you will end up with different results compared to using libabigail as follows:
>>
>> DPDK_ABI_REF_DIR=<some absolute path>
>> DPDK_ABI_REF_VERSION=v20.02 ./devtools/test-meson-builds.sh
>>
>> I did check with the "ABI Compliance Checker" (I like this tool also), however I
>> got the following
>>
>> NOTICE: No error detected, ABI is compatible.
>> INFO: Logs are in /root/src/dpdk/abi-check/abi-check.log
>> INFO: HTML reports are in /root/src/dpdk/abi-check/compat_reports directory
>>
>> What references did you use with validate-abi.sh (I used v20.02 and HEAD).
>>
>> Ray K
>>
>> On 09/05/2020 22:11, Akhil Goyal wrote:
>>> Hi Ray/Arek,
>>>
>>> I still see Incompatible cryptodev even after update in the abignore list.
>>> I checked it with ./devtools/validate-abi.sh
>>> NOTICE: ABI may be incompatible, check reports/logs for details.
>>> NOTICE: Incompatible list:  librte_cryptodev.so
>>>
>>> Did I miss something?
>>>
>>>
>>>>
>>>> On 07/05/2020 11:57, Arek Kusztal wrote:
>>>>> This patch adds versioned function rte_cryptodev_info_get()
>>>>> to prevent some issues with ABI policy.
>>>>> Node v21 works in same way as before, returning driver capabilities
>>>>> directly to the API caller. These capabilities may include new elements
>>>>> not part of the v20 ABI.
>>>>> Node v20 function maintains compatibility with v20 ABI releases
>>>>> by stripping out elements not supported in v20 ABI. Because
>>>>> rte_cryptodev_info_get is called by other API functions,
>>>>> rte_cryptodev_sym_capability_get function is versioned the same way.
>>>>>
>>>>> Signed-off-by: Arek Kusztal <arkadiuszx.kusztal at intel.com>
>>>>> ---
>>>>> v2:
>>>>> - changed version numbers of symbols to 20.0.2
>>>>> v3:
>>>>> - added v2/v3 informations
>>>>> - changed version numbers of symbols to 21
>>>>> v4:
>>>>> - fixed clang build by movind binding default symbol
>>>>> - implemented mailing list comments
>>>>> - added abidiff tool suppression entries
>>>>> v5:
>>>>> - fixed meson build
>>>>>
>>>>>  devtools/libabigail.abignore                   |   8 ++
>>>>>  lib/librte_cryptodev/meson.build               |   1 +
>>>>>  lib/librte_cryptodev/rte_cryptodev.c           | 147
>>>> ++++++++++++++++++++++++-
>>>>>  lib/librte_cryptodev/rte_cryptodev.h           |  34 +++++-
>>>>>  lib/librte_cryptodev/rte_cryptodev_version.map |   7 ++
>>>>>  5 files changed, 191 insertions(+), 6 deletions(-)
>>>>>
>>>> [SNIP]
>>>>
>>>> Acked-by: Ray Kinsella <mdr at ashroe.eu>


More information about the dev mailing list