[dpdk-dev] [RFC] Proposals and notes from ABI stability panel @ DPDK Userspace
ktraynor at redhat.com
Wed Sep 25 15:31:23 CEST 2019
On 23/09/2019 18:51, Ray Kinsella wrote:
> As you may be aware, there was a panel on ABI Stability @ DPDK
> Userspace. There where a number of proposed amendments to the ABI
> stability proposal made, as well as a number of points and comments, you
> will find all these below. The proposals needs further discussion so
> please chime in below.
> Thanks to Tim for capturing while I was busy on the stage.
Thanks for the notes Tim,
> Ray K
> Table of Contents
> 1. Proposals from the panel discussion.
> .. 1. Developer releases (versus User Releases)
> .. 2. Core and non-core packaging
> .. 3. Approach for public data structures
> .. 4. Delaying v19.11
> 2. Other notes from the panel discussion.
> .. 1. Performance as the paramount goal.
> .. 2. Length of ABI Stability.
> .. 3. Testing ABI Stability
> .. 4. Call to action
> 1 Proposals from the panel discussion.
> 1.1 Developer releases (versus User Releases)
> - Summary: Differentiate between "developer" and "user" releases.
> - 1 year is too long to wait to upstream a new feature which breaks
> - Developer releases would be for use by the development community
> - A proposed compromise was that the .08 release would be the only
> "developer release".
> 1.2 Core and non-core packaging
> - Summary: OS packaging doesn't include all libraries.
> - This would create a delta between the community ABI, and the OS
> - OS packagers rational is that some libraries are used very rarely.
> 1.3 Approach for public data structures
> - Summary: Public/exposed data structures are tricky for ABI
> - See discussion @
> 1.4 Delaying v19.11
> - Summary: push v19.11 to v19.12 to make more time to prepare and wave
> the depreciation process.
> - OVS take Nov LTS release in their Feb release. Delaying 19.11 may
> have an impact on this.
To give some more info about OVS. tldr there is a soft freeze on Jan 1st
but an update that is being discussed/reviewed could go in until Jan
15th when the OVS 2.13 branch would be created.
Thomas is indeed right in that there is a development branch in OVS that
is intended to keep up with DPDK master with a view to finding any
integration issues early.
More info here
> - Not easy to change release at this stage as many things depend on
> it (OS distros etc.).
In the short term, based on the feedback at the conference and to give
something concrete to be considered, here is a suggestion,
ABI freeze starts at 20.02 for 9 months, with a review as planned to see
if 20.11 should be frozen 2 years.
+ Eliminates any need for delaying 19.11 release
+ Allows maintainers to stick to current deprecation policy if they need
to make changes prior to freeze (Based on comment from Hemmant)
+ Not sure if it's worthy of a new bullet or clear from above but I
would add that changing the release cycle/deprecation policy etc 2 weeks
(I think) before RC1 is late to say the least and there is no notice to
+ Means that any changes required prior to freeze are not rushed with
usual big LTS release (19.11). Gives more time and maybe during a saner
release cycle (20.02)
- With view for possible 20.11 freeze, gives 2 releases to tease out
process instead of 3
- Perhaps it is desirable for some users to have the 19.11 LTS ABI
compatible with 20.02/05/08 releases
I've tried to keep them objective, of course people will have different
opinions about starting a freeze now vs. later etc. too.
> 2 Other notes from the panel discussion.
> 2.1 Performance as the paramount goal.
> - Some users, would trade performance for better readability and
> - Skepticism that micro-benchmarks reflect real world performance.
> 2.2 Length of ABI Stability.
> - Some users, questioned if 1 year would be long enough.
> - It was clarified that the 1 year period, would be reviewed after the
> first year with the intention of lengthening the period.
> 2.3 Testing ABI Stability
> - More work for developers and validation teams. Need to validate
> multiple paths for symbol versioning.
> 2.4 Call to action
> - We should do something. So we don’t want to have the same
> conversation again in a year.
More information about the dev