[dpdk-dev] ABI and inline functions

Stephen Hemminger stephen at networkplumber.org
Wed Apr 17 18:52:37 CEST 2019


On Wed, 17 Apr 2019 09:36:38 +0100
Bruce Richardson <bruce.richardson at intel.com> wrote:

> > 
> > Coming to 1), I think DPDK cannot provide ABI compatibility unless all the inline functions are converted to normal functions and symbol versioning is done for those (not bothering about performance).
> >   
> I disagree. I think even in the case of #1, we should be able to manage
> some changes without breaking ABI.
> 
> > In this context, does it make sense to say that we will maintain API
> > compatibility rather than saying ABI compatibility? This will also send
> > the right message to the end users.
> >   
> I would value ABI compatibility much higher than API compatibility. If
> someone is recompiling the application anyway, making a couple of small
> changes (large rework is obviously a different issue) to the code should
> not be a massive issue, I hope. On the other hand, ABI compatibility is
> needed to allow seamless update from one version to another, and it's that
> ABI compatiblity that allows distro's to pick up our latest and greatest
> versions.

Agree with Bruce. What is most important about API is that the function
should change signature if behavior changes. I.e catch API changes at
compile time (not runtime).


More information about the dev mailing list