[dpdk-dev] [PATCH] devtools: give some hints for ABI errors

Kinsella, Ray mdr at ashroe.eu
Wed Jul 8 15:22:30 CEST 2020



On 08/07/2020 14:15, David Marchand wrote:
> On Wed, Jul 8, 2020 at 3:09 PM Kinsella, Ray <mdr at ashroe.eu> wrote:
>>
>> + Aaron
>>
>> On 08/07/2020 11:22, David Marchand wrote:
>>> abidiff can provide some more information about the ABI difference it
>>> detected.
>>> In all cases, a discussion on the mailing must happen but we can give
>>> some hints to know if this is a problem with the script calling abidiff,
>>> a potential ABI breakage or an unambiguous ABI breakage.
>>>
>>> Signed-off-by: David Marchand <david.marchand at redhat.com>
>>> ---
>>>  devtools/check-abi.sh | 16 ++++++++++++++--
>>>  1 file changed, 14 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/devtools/check-abi.sh b/devtools/check-abi.sh
>>> index e17fedbd9f..521e2cce7c 100755
>>> --- a/devtools/check-abi.sh
>>> +++ b/devtools/check-abi.sh
>>> @@ -50,10 +50,22 @@ for dump in $(find $refdir -name "*.dump"); do
>>>               error=1
>>>               continue
>>>       fi
>>> -     if ! abidiff $ABIDIFF_OPTIONS $dump $dump2; then
>>> +     abidiff $ABIDIFF_OPTIONS $dump $dump2 || {
>>> +             abiret=$?
>>>               echo "Error: ABI issue reported for 'abidiff $ABIDIFF_OPTIONS $dump $dump2'"
>>>               error=1
>>> -     fi
>>> +             echo
>>> +             if [ $(($abiret & 3)) != 0 ]; then
>>> +                     echo "ABIDIFF_ERROR|ABIDIFF_USAGE_ERROR, please report this to dev at dpdk.org."
> 
> Forgot to --amend.
> Hopefully yes, this will be reported to dev at dpdk.org... I wanted to
> highlight this could be a script or env issue.
> 
> 
>>> +             fi
>>> +             if [ $(($abiret & 4)) != 0 ]; then
>>> +                     echo "ABIDIFF_ABI_CHANGE, this change requires a review (abidiff flagged this as a potential issue)."
>>> +             fi
>>> +             if [ $(($abiret & 8)) != 0 ]; then
>>> +                     echo "ABIDIFF_ABI_INCOMPATIBLE_CHANGE, this change breaks the ABI."
>>> +             fi
>>> +             echo
>>> +     }
>>>  done
>>>
>>>  [ -z "$error" ] || [ -n "$warnonly" ]
>>>
>>
>> This look good to me, my only thought was can we do anything to help the ABI checks play nice with Travis.
>> At the moment it takes time to find the failure reason in the Travis log.
> 
> I usually look for "FILES_TO" to get to the last error.
> 
Right, but there is hopefully a better way to give Travis some clues ...
 


More information about the dev mailing list