On 12/29/16 00:57, Bill Fischofer wrote:
> Signed-off-by: Bill Fischofer <[email protected]>
> ---
>  CHANGELOG | 163 
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 163 insertions(+)
> 
> diff --git a/CHANGELOG b/CHANGELOG
> index 17afe44..e912835 100644
> --- a/CHANGELOG
> +++ b/CHANGELOG
> @@ -1,3 +1,166 @@
> +== OpenDataPlane (1.13.0.0)
> +
> +=== New Features
> +
> +==== APIs
> +ODP v1.13.0.0 represents the initial preview of the Tiger Moth release series
> +and as such introduces new APIs and extensions that will be built on as this
> +release matures.
> +
> +===== Crypto Parameter Normalization
> +Many ODP APIs take parameter structs of type `odp_xxx_param_t`. The crypto 
> APIs,
> +for historical reasons, failed to follow this convention, using instead 
> structs
> +of type `odp_crypto_params_t`, etc. These pluralized names are now deprecated
> +and their singular forms are introduced as the preferred names for these
> +structs. The old names are retained (for now) to ease migration, however
> +applications should convert to the new forms at their convenience as these
> +deprecated forms will be removed in the final Tiger Moth release.
> +
> +The changes introduced for this include:
> +
> +* `odp_crypto_op_params_t` => `odp_crypto_op_param_t`
> +* `odp_crypto_session_params_t` => `odp_crypto_session_param_t`
> +
> +===== Crypto Decouple Key Length from Algorithm Specification
> +To provide a more flexible programming for handling all possible
> +key/digest/iv length combinations, the enums used for crypto specification
> +are split to decouple lengths from algorithm names. The only exception
> +is the SHA-2 family of hash routines, which have well-established naming
> +conventions that incorporate digest lengths (SHA-224, SHA-256, etc.)
> +
> +Changes included with this restructure include:
> +
> +* The `odp_crypto_capability_t` structure returned by the
> +`odp_crypto_capability()` API contains streamlined 
> `odp_crypto_cipher_algos_t`
> +and `odp_crypto_auth_algos_t` substructures.
> +* A new `odp_crypto_cipher_capability()` API is added to return detailed
> +information about available cipher capabilities.
> +* A new `odp_crypto_auth_capability()` API is added to return detailed
> +information about available authentication capabilities.
> +
> +===== `odp_crypto_session_param_init()` API
> +For completeness the `odp_crypto_session_param_init()` API is provided to
> +enable platform-independent initialization of the 
> `odp_crypto_session_param_t`
> +structure used as input to `odp_crypto_session_create()`.
> +
> +===== Bitfield and Byteorder Cleanup
> +The `ODP_BITFIELD_ORDER` define is added to the ODP specification to parallel
> +the existing `ODP_BYTEFIELD_ORDER` define. This will be set to the value
> +`ODP_BIG_ENDIAN_BITFIELD` or `ODP_LITTLE_ENDIAN_BITFIELD`. This also 
> addresses
> +https://bugs.linaro.org/show_bug.cgi?id=2402[Bug 2402], however since fixing
> +this required a small API change this was deferred until an API release
> +boundary.
> +
> +===== Improved Name Argument Definitions in `odp_xxx_create()` Functions
> +The use of name arguments to the various resource creation APIs has
> +been standardized and documentation improved to clarify that unique
> +names are not required and that these may be specified as NULL for
> +anonymous resource creation. When non-unique resource names are used, it is
> +unspecified which of these are returned by a corresponding lookup API.
> +
> +===== Pool Parameters for Packet Pools
> +The `odp_pool_param_t` structure adds the new field `max_len` to be used in
> +packet pools to advise the implementation of the maximum sized packet that
> +the application will allocate with a single `odp_packet_alloc()` call. This
> +may enable storage pool optimization.
> +
> +===== Packet Clarifications
> +API documentation for `odp_packet_concat()` and `odp_packet_copy_from_pkt()`
> +is clarified to specify that the source and destination packets supplied to
> +these APIs should not refer to the same packet.
> +
> +===== Packet Allocation Length Clarification
> +API documentation for `odp_packet_alloc()` is clarified to specify that
> +the supplied length for requested packet allocation should be greater
> +than zero.
> +
> +===== Random API Changes
> +The APIs provided for working with random data have been revised. The third
> +parameter to `odp_random_data()` is now of type `odp_random_kind_t`, which is
> +an `enum` that is used to specify the quality of random data required. The
> +kinds of random data defined are:
> +
> +`ODP_RANDOM_BASIC`::
> +No specific quality guarantees. This is assumed to be pseudo-random data
> +generated by software where speed of generation is more important than the
> +quality of the results.This is the lowest kind of random.
> +
> +`ODP_RANDOM_CRYPTO`::
> +Random data suitable for use in cryptographic operations.
> +
> +`ODP_RANDOM_TRUE`::
> +True random data generated from a hardware entropy source. This is the
> +highest kind of random.
> +
> +The `odp_random_max_kind()` API is provided that returns the highest kind of
> +data available on this implementation. Requests for higher kinds than can be
> +supplied will fail.
> +
> +For testing purposes it is often desirable to generate "random" sequences 
> that
> +are repeatable. To support this use case, the `odp_random_test_data()` API is
> +introduced. This always returns BASIC random data but uses a user-supplied
> +64-byte seed parameter that is update for each call and can be used to
> +repeat the same sequence as needed.
> +
> +===== Shared Memory Improvements
> +The `odp_shm_reserve()` API adds two new additional flags to support external
> +memory.
> +
> +* `ODP_SHM_SINGLE_VA` guarantees that all ODP threads sharing this memory
> +will see the block at the same virtual address regardless of whether threads
> +are implemented as pthreads or processes and when `fork()` calls are made to
> +create them.
> +
> +* `ODP_SHM_EXPORT` allows the memory block to be visible to other ODP
> +instances. Other ODP instances can retrieve this block via the new
> +`odp_shm_import()` API.
> +
> +===== Classification Clarifications
> +The relationship between classification and queue configuration in the
> +`odp_pktin_queue_param_t` structure is clarified to emphasize that
> +classification subsumes queue-based I/O processing. This is an API
> +documentation change only.
> +
> +=== Helpers
> +New helper APIs are introduced for IP table lookup support for longest prefix
> +matching as well as cuckoo hash tables. These are designed to provide analogs
> +to functions available in DPDK to assist applications being ported to ODP.
> +
> +=== Performance Improvements
> +The odp-linux reference implementation includes a number of improvements to
> +make it more suitable for production use on platforms that rely on software
> +implementations of key ODP APIs.
> +
> +==== Ring-based Pool Implementation
> +Storage pools used for buffers and packets are now implemented via lockless
> +ring structures for significantly improved multi-core scalability
> +
> +==== Ordered Queue Improvements
> +The implementation of ordered queues has been streamlined and made more
> +scaleable in multi-core systems.
> +
> +==== Packet Segmentation Improvements
> +The more advance segmentation capabilities present in the new ODP packet
> +implementation are used to streamline the implementation of APIs like
> +`odp_packet_concat()` and the head/tail extend/trunc APIs.
> +
> +=== Bug Fixes
> +
> +==== https://bugs.linaro.org/show_bug.cgi?id=2405[Bug 2405]
> +A number of "todos" were removed from the packet validation test suite.
> +
> +==== https://bugs.linaro.org/show_bug.cgi?id=2472[Bug 2472]
> +The CPU affinity is now correctly read from the cpuset.
> +
> +==== https://bugs.linaro.org/show_bug.cgi?id=2512[Bug 2512]
> +The TCP checksum is now properly calculated for generated packets.
> +
> +=== Known Issues
> +
> +==== https://bugs.linaro.org/show_bug.cgi?id=2765[Bug 2765]
> +The fixed storage overhead for supporting the new pool structures is large
> +(over a quarter of a gigabyte). This may have an impact on smaller systems.
> +


I think we need merge this patch before release. Patch itself is
reasonable and I think it can to go. But it will be good to get Petris
feedback on answer on his comment.

Maxim.

>  == OpenDataPlane (1.12.0.0)
>  
>  === New Features
> 

Reply via email to