diff mbox

changelog: summary of changes for odp v1.10.2.0

Message ID 1479394214-26606-1-git-send-email-bill.fischofer@linaro.org
State Superseded
Headers show

Commit Message

Bill Fischofer Nov. 17, 2016, 2:50 p.m. UTC
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

---
 CHANGELOG | 211 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 211 insertions(+)

-- 
2.7.4

Comments

Maxim Uvarov Nov. 18, 2016, 1:34 p.m. UTC | #1
I think Monarch branch with his changelog changes has to be merged in 
master.
Then this changes will update version to v1.11.0.0

And after that current changelog updates version to v1.11.1.0

Please see structure here:
https://git.linaro.org/people/maxim.uvarov/odp.git/log/
(gitk or git log --oneline --graph can show merge history better).

If no objections I will do that merge. And I think I can change 
numbering in you patch in place, without resending it.

Maxim.


On 11/17/16 17:50, Bill Fischofer wrote:
> Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

> ---

>   CHANGELOG | 211 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

>   1 file changed, 211 insertions(+)

>

> diff --git a/CHANGELOG b/CHANGELOG

> index d8230cd..3ab7354 100644

> --- a/CHANGELOG

> +++ b/CHANGELOG

> @@ -1,3 +1,214 @@

> +== OpenDataPlane (1.10.2.0)

> +

> +=== New Features

> +

> +==== APIs

> +ODP v1.10.2.0 is a minor API revision level and introduces a small change to

> +the Traffic Manager API as well as some documentation clarification surrounding

> +other APIs.

> +

> +==== Traffic Manager Egress Function

> +The `odp_tm_egress_t` struct has been changed to add an explicit Boolean

> +(`egress_fcn_supported`) that indicates whether the TM system supports

> +a user-provided egress function. When specified this function is called to

> +"output" a packet rather than having TM transmit it directly to a PktIO

> +interface.

> +

> +==== Traffic Manager Coupling Change

> +The `odp_tm_egress_t` struct has been changed to associate a TM system with an

> +output `odp_pktio_t` rather than the previous `odp_pktout_queue_t`. This makes

> +an explicit 1-to-1 map between a TM system and a PktIO interface.

> +

> +==== Default huge page size clarification

> +The documentation for the `odp_sys_huge_page_size()` API has been reworded to

> +clarify that this API refers to default huge page size.

> +

> +==== Strict Priority (SP) Scheduler

> +Building on the modular scheduler framework added in v1.10.1.0, an alternate

> +Strict Priority (SP) Scheduler is now available for latency-sensitive

> +workloads. Applications wishing to use the SP scheduler should specify

> +the `./configure` option `--enable-schedule-sp`. This scheduler emphasizes low

> +latency processing of high priority events at the expense of throughput. This

> +alternate scheduler is considered experimental and should not be used for

> +production at this time.

> +

> +==== Application Binary Interface (ABI) Support

> +Support is added to enable ODP applications to be binary compatible across

> +different implementations of ODP sharing the same Instruction Set Architecture

> +(ISA). This support introduces a new `configure` option:

> +

> +`--enable-abi-compat=yes`::

> +This is the default and specifies that the ODP library is to be built to

> +support ABI compatibility mode. In this mode ODP APIs are never inlined. ABI

> +compatibility ensures maximum application portability in cloud environments.

> +

> +`--enable-abi-compat=no`::

> +Specify this option to enable the inlining of ODP APIs. This may result in

> +improved performance at the cost of ABI compatibility and is suitable for

> +applications running in embedded environments.

> +

> +Note that ODP applications retain source code portability between ODP

> +implementations regardless of the ABI mode chosen. To move to a different ODP

> +application running on a different ISA, code need simply be recompiled against

> +that target ODP implementation.

> +

> +==== SCTP Parsing Support

> +The ODP classifier adds support for recognizing Stream Control Transmission

> +Protocol (SCTP) packets. The APIs for this were previously not implemented.

> +

> +=== Packaging and Implementation Refinements

> +

> +==== Remove dependency on Linux headers

> +ODP no longer has a dependency on Linux headers. This will help make the

> +odp-linux reference implementation more easily portable to non-Linux

> +environments.

> +

> +==== Remove dependency on helpers

> +The odp-linux implementation has been made independent of the helper library

> +to avoid circular dependency issues with packaging. Helper functions may use

> +ODP APIs, however ODP implementations should not use helper functions.

> +

> +==== Reorganization of `test` directory

> +The `test` directory has been reorganized to better support a unified approach

> +to ODP component testing. API tests now live in

> +`test/common_plat/validation/api` instead of the former

> +`test/validation`. With this change performance and validation tests, as well

> +as common and platform-specific tests can all be part of a unified test

> +hierarchy.

> +

> +The resulting test tree now looks like:

> +

> +.New `test` directory hierarchy

> +-----

> +test

> +├── common_plat

> +│   ├── common

> +│   ├── m4

> +│   ├── miscellaneous

> +│   ├── performance

> +│   └── validation

> +│       └── api

> +│           ├── atomic

> +│           ├── barrier

> +│           ├── buffer

> +│           ├── classification

> +│           ├── cpumask

> +│           ├── crypto

> +│           ├── errno

> +│           ├── hash

> +│           ├── init

> +│           ├── lock

> +│           ├── packet

> +│           ├── pktio

> +│           ├── pool

> +│           ├── queue

> +│           ├── random

> +│           ├── scheduler

> +│           ├── shmem

> +│           ├── std_clib

> +│           ├── system

> +│           ├── thread

> +│           ├── time

> +│           ├── timer

> +│           └── traffic_mngr

> +├── linux-generic

> +│   ├── m4

> +│   ├── mmap_vlan_ins

> +│   ├── performance

> +│   ├── pktio_ipc

> +│   ├── ring

> +│   └── validation

> +│       └── api

> +│           ├── pktio

> +│           └── shmem

> +└── m4

> +-----

> +

> +==== Pools

> +The maximum number of pools that may be created in the odp-linux reference

> +implementation has been raised from 16 to 64.

> +

> +==== Upgrade to DPDK 16.07

> +The DPDK pktio support in odp-linux has been upgraded to work with DPDK 16.07.

> +A number of miscellaneous fixes and performance improvements in this support

> +are also present.

> +

> +==== PktIO TAP Interface Classifier Support

> +Packet I/O interfaces operating in TAP mode now can feed packets to the ODP

> +classifier the same as other pktio modes can do.

> +

> +=== Performance Improvements

> +

> +==== Thread-local cache optimizations

> +The thread-local buffer cache has been reorganized and optimized for burst-mode

> +operation, yielding a measurable performance gain in almost all cases.

> +

> +==== Burst-mode buffer allocation

> +The scheduler and pktio components have been reworked to use burst-mode

> +buffer allocation/deallocation, yielding a measurable performance gain in

> +almost all cases.

> +

> +==== Burst-mode queue operations

> +ODP queues internally now attempt to use burst-mode enq/deq operations to

> +accelerate performance where applicable.

> +

> +==== Ring-based Scheduler Priority Queues

> +The ODP scheduler has been enhanced to use ring-based priority queues, resulting

> +in significantly better scalability in many core environments.

> +

> +==== GitHub Automation Support

> +ODP now supports the Travis framework needed to trigger CI automation in

> +conjunction with GitHub. This support is considered experimental for now.

> +

> +=== Examples

> +

> +==== New `l3fwd` Example

> +A new example application is provided that illustrates use

> +of ODP for simple Layer 3 forwarding across multiple interfaces.

> +

> +==== "Hello World" Example Application

> +A basic "hello world" ODP application has been added to the `example`

> +directory to illustrate the basic setup and control flow needed by ODP

> +applications.

> +

> +=== Documentation

> +

> +==== Pure API Documentation

> +ODP now generates "pure" (implementation independent) doxygen documentation in

> +addition to the specific documentation for the odp-linux implementation. The

> +pure version is applicable to any ODP implementation as it simply describes

> +the ODP API specification. Implementation-specific versions of this

> +documentation describe both the APIs as well as specifics concerning typedefs,

> +enums, etc. This should help clarify what aspects of ODP are platform

> +independent.

> +

> +==== Clarify ODP Thread Definition

> +The definition of an ODP thread in odp-linux has been clarified to specify that

> +for this implementation ODP threads are Linux pthreads or Linux processes.

> +Currently threads as processes is considered experimental in odp-linux.

> +

> +=== Bug Fixes

> +Numerous refinements have been incorporated to make

> +validation tests more robust in API coverage as well as correcting corner

> +cases in the implementation of many ODP APIs. Notable fixes include:

> +

> +==== https://bugs.linaro.org/show_bug.cgi?id=2316[Bug 2316]

> +`ODP_TIMEOUT_INVALID` is now defined consistently with other pool elements so

> +the restriction on using Pool 0 as a timer pool is removed.

> +

> +==== https://bugs.linaro.org/show_bug.cgi?id=2310[Bug 2310]

> +The `odp_packet_copy()` API now correctly handles user areas between pools that

> +are configured with different sized per-packet user area definitions.

> +

> +==== https://bugs.linaro.org/show_bug.cgi?id=2571[Bug 2571]

> +Corrects the implementation of AES GCM decryption in the ODP crypto API.

> +

> +=== Known Issues

> +

> +==== https://bugs.linaro.org/show_bug.cgi?id=2309[Bug 2309]

> +The Timer validation test fails sporadically in environments with high core

> +counts.

> +

>   == OpenDataPlane (1.10.1.0)

>   

>   === New Features
Bill Fischofer Nov. 18, 2016, 3:45 p.m. UTC | #2
Thanks Maxim. I'm traveling and will have limited availability over the
next week so if you want to rework this patch I'm fine with that.

On Fri, Nov 18, 2016 at 7:35 AM Maxim Uvarov <maxim.uvarov@linaro.org>
wrote:

>

> I think Monarch branch with his changelog changes has to be merged in

> master.

> Then this changes will update version to v1.11.0.0

>

> And after that current changelog updates version to v1.11.1.0

>

> Please see structure here:

> https://git.linaro.org/people/maxim.uvarov/odp.git/log/

> (gitk or git log --oneline --graph can show merge history better).

>

> If no objections I will do that merge. And I think I can change

> numbering in you patch in place, without resending it.

>

> Maxim.

>

>

> On 11/17/16 17:50, Bill Fischofer wrote:

> > Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

> > ---

> >   CHANGELOG | 211

> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

> >   1 file changed, 211 insertions(+)

> >

> > diff --git a/CHANGELOG b/CHANGELOG

> > index d8230cd..3ab7354 100644

> > --- a/CHANGELOG

> > +++ b/CHANGELOG

> > @@ -1,3 +1,214 @@

> > +== OpenDataPlane (1.10.2.0)

> > +

> > +=== New Features

> > +

> > +==== APIs

> > +ODP v1.10.2.0 is a minor API revision level and introduces a small

> change to

> > +the Traffic Manager API as well as some documentation clarification

> surrounding

> > +other APIs.

> > +

> > +==== Traffic Manager Egress Function

> > +The `odp_tm_egress_t` struct has been changed to add an explicit Boolean

> > +(`egress_fcn_supported`) that indicates whether the TM system supports

> > +a user-provided egress function. When specified this function is called

> to

> > +"output" a packet rather than having TM transmit it directly to a PktIO

> > +interface.

> > +

> > +==== Traffic Manager Coupling Change

> > +The `odp_tm_egress_t` struct has been changed to associate a TM system

> with an

> > +output `odp_pktio_t` rather than the previous `odp_pktout_queue_t`.

> This makes

> > +an explicit 1-to-1 map between a TM system and a PktIO interface.

> > +

> > +==== Default huge page size clarification

> > +The documentation for the `odp_sys_huge_page_size()` API has been

> reworded to

> > +clarify that this API refers to default huge page size.

> > +

> > +==== Strict Priority (SP) Scheduler

> > +Building on the modular scheduler framework added in v1.10.1.0, an

> alternate

> > +Strict Priority (SP) Scheduler is now available for latency-sensitive

> > +workloads. Applications wishing to use the SP scheduler should specify

> > +the `./configure` option `--enable-schedule-sp`. This scheduler

> emphasizes low

> > +latency processing of high priority events at the expense of

> throughput. This

> > +alternate scheduler is considered experimental and should not be used

> for

> > +production at this time.

> > +

> > +==== Application Binary Interface (ABI) Support

> > +Support is added to enable ODP applications to be binary compatible

> across

> > +different implementations of ODP sharing the same Instruction Set

> Architecture

> > +(ISA). This support introduces a new `configure` option:

> > +

> > +`--enable-abi-compat=yes`::

> > +This is the default and specifies that the ODP library is to be built to

> > +support ABI compatibility mode. In this mode ODP APIs are never

> inlined. ABI

> > +compatibility ensures maximum application portability in cloud

> environments.

> > +

> > +`--enable-abi-compat=no`::

> > +Specify this option to enable the inlining of ODP APIs. This may result

> in

> > +improved performance at the cost of ABI compatibility and is suitable

> for

> > +applications running in embedded environments.

> > +

> > +Note that ODP applications retain source code portability between ODP

> > +implementations regardless of the ABI mode chosen. To move to a

> different ODP

> > +application running on a different ISA, code need simply be recompiled

> against

> > +that target ODP implementation.

> > +

> > +==== SCTP Parsing Support

> > +The ODP classifier adds support for recognizing Stream Control

> Transmission

> > +Protocol (SCTP) packets. The APIs for this were previously not

> implemented.

> > +

> > +=== Packaging and Implementation Refinements

> > +

> > +==== Remove dependency on Linux headers

> > +ODP no longer has a dependency on Linux headers. This will help make the

> > +odp-linux reference implementation more easily portable to non-Linux

> > +environments.

> > +

> > +==== Remove dependency on helpers

> > +The odp-linux implementation has been made independent of the helper

> library

> > +to avoid circular dependency issues with packaging. Helper functions

> may use

> > +ODP APIs, however ODP implementations should not use helper functions.

> > +

> > +==== Reorganization of `test` directory

> > +The `test` directory has been reorganized to better support a unified

> approach

> > +to ODP component testing. API tests now live in

> > +`test/common_plat/validation/api` instead of the former

> > +`test/validation`. With this change performance and validation tests,

> as well

> > +as common and platform-specific tests can all be part of a unified test

> > +hierarchy.

> > +

> > +The resulting test tree now looks like:

> > +

> > +.New `test` directory hierarchy

> > +-----

> > +test

> > +├── common_plat

> > +│   ├── common

> > +│   ├── m4

> > +│   ├── miscellaneous

> > +│   ├── performance

> > +│   └── validation

> > +│       └── api

> > +│           ├── atomic

> > +│           ├── barrier

> > +│           ├── buffer

> > +│           ├── classification

> > +│           ├── cpumask

> > +│           ├── crypto

> > +│           ├── errno

> > +│           ├── hash

> > +│           ├── init

> > +│           ├── lock

> > +│           ├── packet

> > +│           ├── pktio

> > +│           ├── pool

> > +│           ├── queue

> > +│           ├── random

> > +│           ├── scheduler

> > +│           ├── shmem

> > +│           ├── std_clib

> > +│           ├── system

> > +│           ├── thread

> > +│           ├── time

> > +│           ├── timer

> > +│           └── traffic_mngr

> > +├── linux-generic

> > +│   ├── m4

> > +│   ├── mmap_vlan_ins

> > +│   ├── performance

> > +│   ├── pktio_ipc

> > +│   ├── ring

> > +│   └── validation

> > +│       └── api

> > +│           ├── pktio

> > +│           └── shmem

> > +└── m4

> > +-----

> > +

> > +==== Pools

> > +The maximum number of pools that may be created in the odp-linux

> reference

> > +implementation has been raised from 16 to 64.

> > +

> > +==== Upgrade to DPDK 16.07

> > +The DPDK pktio support in odp-linux has been upgraded to work with DPDK

> 16.07.

> > +A number of miscellaneous fixes and performance improvements in this

> support

> > +are also present.

> > +

> > +==== PktIO TAP Interface Classifier Support

> > +Packet I/O interfaces operating in TAP mode now can feed packets to the

> ODP

> > +classifier the same as other pktio modes can do.

> > +

> > +=== Performance Improvements

> > +

> > +==== Thread-local cache optimizations

> > +The thread-local buffer cache has been reorganized and optimized for

> burst-mode

> > +operation, yielding a measurable performance gain in almost all cases.

> > +

> > +==== Burst-mode buffer allocation

> > +The scheduler and pktio components have been reworked to use burst-mode

> > +buffer allocation/deallocation, yielding a measurable performance gain

> in

> > +almost all cases.

> > +

> > +==== Burst-mode queue operations

> > +ODP queues internally now attempt to use burst-mode enq/deq operations

> to

> > +accelerate performance where applicable.

> > +

> > +==== Ring-based Scheduler Priority Queues

> > +The ODP scheduler has been enhanced to use ring-based priority queues,

> resulting

> > +in significantly better scalability in many core environments.

> > +

> > +==== GitHub Automation Support

> > +ODP now supports the Travis framework needed to trigger CI automation in

> > +conjunction with GitHub. This support is considered experimental for

> now.

> > +

> > +=== Examples

> > +

> > +==== New `l3fwd` Example

> > +A new example application is provided that illustrates use

> > +of ODP for simple Layer 3 forwarding across multiple interfaces.

> > +

> > +==== "Hello World" Example Application

> > +A basic "hello world" ODP application has been added to the `example`

> > +directory to illustrate the basic setup and control flow needed by ODP

> > +applications.

> > +

> > +=== Documentation

> > +

> > +==== Pure API Documentation

> > +ODP now generates "pure" (implementation independent) doxygen

> documentation in

> > +addition to the specific documentation for the odp-linux

> implementation. The

> > +pure version is applicable to any ODP implementation as it simply

> describes

> > +the ODP API specification. Implementation-specific versions of this

> > +documentation describe both the APIs as well as specifics concerning

> typedefs,

> > +enums, etc. This should help clarify what aspects of ODP are platform

> > +independent.

> > +

> > +==== Clarify ODP Thread Definition

> > +The definition of an ODP thread in odp-linux has been clarified to

> specify that

> > +for this implementation ODP threads are Linux pthreads or Linux

> processes.

> > +Currently threads as processes is considered experimental in odp-linux.

> > +

> > +=== Bug Fixes

> > +Numerous refinements have been incorporated to make

> > +validation tests more robust in API coverage as well as correcting

> corner

> > +cases in the implementation of many ODP APIs. Notable fixes include:

> > +

> > +==== https://bugs.linaro.org/show_bug.cgi?id=2316[Bug 2316]

> > +`ODP_TIMEOUT_INVALID` is now defined consistently with other pool

> elements so

> > +the restriction on using Pool 0 as a timer pool is removed.

> > +

> > +==== https://bugs.linaro.org/show_bug.cgi?id=2310[Bug 2310]

> > +The `odp_packet_copy()` API now correctly handles user areas between

> pools that

> > +are configured with different sized per-packet user area definitions.

> > +

> > +==== https://bugs.linaro.org/show_bug.cgi?id=2571[Bug 2571]

> > +Corrects the implementation of AES GCM decryption in the ODP crypto API.

> > +

> > +=== Known Issues

> > +

> > +==== https://bugs.linaro.org/show_bug.cgi?id=2309[Bug 2309]

> > +The Timer validation test fails sporadically in environments with high

> core

> > +counts.

> > +

> >   == OpenDataPlane (1.10.1.0)

> >

> >   === New Features

>

>
diff mbox

Patch

diff --git a/CHANGELOG b/CHANGELOG
index d8230cd..3ab7354 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,214 @@ 
+== OpenDataPlane (1.10.2.0)
+
+=== New Features
+
+==== APIs
+ODP v1.10.2.0 is a minor API revision level and introduces a small change to
+the Traffic Manager API as well as some documentation clarification surrounding
+other APIs.
+
+==== Traffic Manager Egress Function
+The `odp_tm_egress_t` struct has been changed to add an explicit Boolean
+(`egress_fcn_supported`) that indicates whether the TM system supports
+a user-provided egress function. When specified this function is called to
+"output" a packet rather than having TM transmit it directly to a PktIO
+interface.
+
+==== Traffic Manager Coupling Change
+The `odp_tm_egress_t` struct has been changed to associate a TM system with an
+output `odp_pktio_t` rather than the previous `odp_pktout_queue_t`. This makes
+an explicit 1-to-1 map between a TM system and a PktIO interface.
+
+==== Default huge page size clarification
+The documentation for the `odp_sys_huge_page_size()` API has been reworded to
+clarify that this API refers to default huge page size.
+
+==== Strict Priority (SP) Scheduler
+Building on the modular scheduler framework added in v1.10.1.0, an alternate
+Strict Priority (SP) Scheduler is now available for latency-sensitive
+workloads. Applications wishing to use the SP scheduler should specify
+the `./configure` option `--enable-schedule-sp`. This scheduler emphasizes low
+latency processing of high priority events at the expense of throughput. This
+alternate scheduler is considered experimental and should not be used for
+production at this time.
+
+==== Application Binary Interface (ABI) Support
+Support is added to enable ODP applications to be binary compatible across
+different implementations of ODP sharing the same Instruction Set Architecture
+(ISA). This support introduces a new `configure` option:
+
+`--enable-abi-compat=yes`::
+This is the default and specifies that the ODP library is to be built to
+support ABI compatibility mode. In this mode ODP APIs are never inlined. ABI
+compatibility ensures maximum application portability in cloud environments.
+
+`--enable-abi-compat=no`::
+Specify this option to enable the inlining of ODP APIs. This may result in
+improved performance at the cost of ABI compatibility and is suitable for
+applications running in embedded environments.
+
+Note that ODP applications retain source code portability between ODP
+implementations regardless of the ABI mode chosen. To move to a different ODP
+application running on a different ISA, code need simply be recompiled against
+that target ODP implementation.
+
+==== SCTP Parsing Support
+The ODP classifier adds support for recognizing Stream Control Transmission
+Protocol (SCTP) packets. The APIs for this were previously not implemented.
+
+=== Packaging and Implementation Refinements
+
+==== Remove dependency on Linux headers
+ODP no longer has a dependency on Linux headers. This will help make the
+odp-linux reference implementation more easily portable to non-Linux
+environments.
+
+==== Remove dependency on helpers
+The odp-linux implementation has been made independent of the helper library
+to avoid circular dependency issues with packaging. Helper functions may use
+ODP APIs, however ODP implementations should not use helper functions.
+
+==== Reorganization of `test` directory
+The `test` directory has been reorganized to better support a unified approach
+to ODP component testing. API tests now live in
+`test/common_plat/validation/api` instead of the former
+`test/validation`. With this change performance and validation tests, as well
+as common and platform-specific tests can all be part of a unified test
+hierarchy.
+
+The resulting test tree now looks like:
+
+.New `test` directory hierarchy
+-----
+test
+├── common_plat
+│   ├── common
+│   ├── m4
+│   ├── miscellaneous
+│   ├── performance
+│   └── validation
+│       └── api
+│           ├── atomic
+│           ├── barrier
+│           ├── buffer
+│           ├── classification
+│           ├── cpumask
+│           ├── crypto
+│           ├── errno
+│           ├── hash
+│           ├── init
+│           ├── lock
+│           ├── packet
+│           ├── pktio
+│           ├── pool
+│           ├── queue
+│           ├── random
+│           ├── scheduler
+│           ├── shmem
+│           ├── std_clib
+│           ├── system
+│           ├── thread
+│           ├── time
+│           ├── timer
+│           └── traffic_mngr
+├── linux-generic
+│   ├── m4
+│   ├── mmap_vlan_ins
+│   ├── performance
+│   ├── pktio_ipc
+│   ├── ring
+│   └── validation
+│       └── api
+│           ├── pktio
+│           └── shmem
+└── m4
+-----
+
+==== Pools
+The maximum number of pools that may be created in the odp-linux reference
+implementation has been raised from 16 to 64.
+
+==== Upgrade to DPDK 16.07
+The DPDK pktio support in odp-linux has been upgraded to work with DPDK 16.07.
+A number of miscellaneous fixes and performance improvements in this support
+are also present.
+
+==== PktIO TAP Interface Classifier Support
+Packet I/O interfaces operating in TAP mode now can feed packets to the ODP
+classifier the same as other pktio modes can do.
+
+=== Performance Improvements
+
+==== Thread-local cache optimizations
+The thread-local buffer cache has been reorganized and optimized for burst-mode
+operation, yielding a measurable performance gain in almost all cases.
+
+==== Burst-mode buffer allocation
+The scheduler and pktio components have been reworked to use burst-mode
+buffer allocation/deallocation, yielding a measurable performance gain in
+almost all cases.
+
+==== Burst-mode queue operations
+ODP queues internally now attempt to use burst-mode enq/deq operations to
+accelerate performance where applicable.
+
+==== Ring-based Scheduler Priority Queues
+The ODP scheduler has been enhanced to use ring-based priority queues, resulting
+in significantly better scalability in many core environments.
+
+==== GitHub Automation Support
+ODP now supports the Travis framework needed to trigger CI automation in
+conjunction with GitHub. This support is considered experimental for now.
+
+=== Examples
+
+==== New `l3fwd` Example
+A new example application is provided that illustrates use
+of ODP for simple Layer 3 forwarding across multiple interfaces.
+
+==== "Hello World" Example Application
+A basic "hello world" ODP application has been added to the `example`
+directory to illustrate the basic setup and control flow needed by ODP
+applications.
+
+=== Documentation
+
+==== Pure API Documentation
+ODP now generates "pure" (implementation independent) doxygen documentation in
+addition to the specific documentation for the odp-linux implementation. The
+pure version is applicable to any ODP implementation as it simply describes
+the ODP API specification. Implementation-specific versions of this
+documentation describe both the APIs as well as specifics concerning typedefs,
+enums, etc. This should help clarify what aspects of ODP are platform
+independent.
+
+==== Clarify ODP Thread Definition
+The definition of an ODP thread in odp-linux has been clarified to specify that
+for this implementation ODP threads are Linux pthreads or Linux processes.
+Currently threads as processes is considered experimental in odp-linux.
+
+=== Bug Fixes
+Numerous refinements have been incorporated to make
+validation tests more robust in API coverage as well as correcting corner
+cases in the implementation of many ODP APIs. Notable fixes include:
+
+==== https://bugs.linaro.org/show_bug.cgi?id=2316[Bug 2316]
+`ODP_TIMEOUT_INVALID` is now defined consistently with other pool elements so
+the restriction on using Pool 0 as a timer pool is removed.
+
+==== https://bugs.linaro.org/show_bug.cgi?id=2310[Bug 2310]
+The `odp_packet_copy()` API now correctly handles user areas between pools that
+are configured with different sized per-packet user area definitions.
+
+==== https://bugs.linaro.org/show_bug.cgi?id=2571[Bug 2571]
+Corrects the implementation of AES GCM decryption in the ODP crypto API.
+
+=== Known Issues
+
+==== https://bugs.linaro.org/show_bug.cgi?id=2309[Bug 2309]
+The Timer validation test fails sporadically in environments with high core
+counts.
+
 == OpenDataPlane (1.10.1.0)
 
 === New Features