From bed462d28fa081a0d66dd29a8034f188256c7d04 Mon Sep 17 00:00:00 2001 From: Bill Fischofer Date: Mon, 7 May 2018 15:29:04 -0500 Subject: changelog: updates for odp v1.19.0.1 Add updates for ODP v1.19.0.1 (Tiger Moth Service Update 1) Signed-off-by: Bill Fischofer Reviewed-by: Dmitry Eremin-Solenikov Signed-off-by: Maxim Uvarov --- CHANGELOG | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) (limited to 'CHANGELOG') diff --git a/CHANGELOG b/CHANGELOG index 5af1777c6..966553202 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,127 @@ +== OpenDataPlane (1.19.0.1) +=== Summary of Changes +ODP v1.19.0.1 is the first service update for the Tiger Moth release. It +incorporates a number of corrections and enhancements that improve the quality +and testability of ODP. + +==== APIs +There are no API changes in this release. + +==== DPDK Service Release Sync +ODP is now paired with DPDK 17.11.2 for it's DPDK-related support. This is the +current service level for the DPDK 17.11 LTS package used by ODP Tiger Moth +and incorporates a number of important bug fixes. + +=== Implementation Improvements +The ODP reference implementation has been improved in a number of areas. + +==== GCC 8 Support +The GCC 8 series of compilers provides additional warnings about possible +string truncation. A few ODP modules were changed to avoid misleading +warnings when compiling with this level of GCC. + +==== Linking with `libnuma` +The `libnuma` library is used for DPDK pktios to provide proper memory +allocation on NUMA-aware systems. Linking with this library is improved to +avoid extraneous error messages at build time. + +==== Packet metadata reorganization +Packet metadata is reorganized to reduce the cache footprint used by the ODP +reference implementation, resulting in performance improvements. + +==== Random split from crypto module +The `odp_random_xxx()` family of APIs was moved to a separate module +(`odp_random.c`) for modularity and better isolation from planned crypto +enhancements. + +==== Shmem improvements +Unnecessary locking is removed from the `odp_fdserver` module, streamlining +operations on shared memory. + +==== Timer pools +The default number of timer pools supported by the ODP reference +implementation has been reduced from 255 to 32. This lower number remains +generously adequate for most applications and meaningfully reduces memory +footprint, giving better performance. + +==== Timer resolution +During initialization ODP normally measures timer resolution to set the +reported `highest_res_ns`. When such measurement is not able to be performed, +this is not limited to 500ns to avoid bounds errors with overly precise +resolutions. + +=== Validation Improvements +The ODP validation test suite has been improved in a number of areas. + +==== Crypto validation test +The validation test now correctly handles corner cases when the implementation +under test fails to process any test packets. It also includes the +previously missing `ODP_CIPHER_ALG_AES_CTR` name. + +Additionally, since individual implementations indicate which crypto/hash +algorithms are supported via the `odp_crypto_capability()` API, the crypto +validation test now properly uses this information and only tests those +algorithms that the implementation reports as supported. The list of +unsupported algorithms is also reported as part of the test results. + +==== `odp_sched_pktio` test improvements +The number of input/output queues used by this test can now be specified, +providing additional controls for test flexibility. In addition, pktout +queues are now selected based on input queue rather than worker id, thus +ensuring packet order flow is maintained. + +Finally, an inactivity timer is added that allows the test to report when +packets were handled due to timeout rather than I/O activity. + +==== Timer validation test +The validation test for the ODP timer APIs has been reorganized to better +characterize an implementation's conformance to the ODP Timer API +specification. Since implementations can have widely differing timer accuracy +levels, particularly when running in virtualized environments, the test also +relaxes its bounds checking and enforcement somewhat to better avoid false +negative test results. + +Additionally, a timer pool create/destroy test was added as this area was +not adequately covered previously. + +=== Documentation Improvements +The `EXTRA_ASCIIDOC_FLAGS` environment variable may now be used to supply +additional build flags for Asciidoctor, which can be used to override +icons and/or fonts for distribution or other needs. + +=== Bug Fixes +==== https://bugs.linaro.org/show_bug.cgi?id=3657[Bug 3657] +PktIO does not work with Mellanox Interfaces + +==== https://bugs.linaro.org/show_bug.cgi?id=3685[Bug 3685] +RX UDP checksum offload drops valid UDP packets with Niantic + +==== https://bugs.linaro.org/show_bug.cgi?id=3686[Bug 3686] +IP header checksum not inserted if L4 offset not set + +==== https://bugs.linaro.org/show_bug.cgi?id=3690[Bug 3690] +fdserver process interferes with signal handling + +==== https://bugs.linaro.org/show_bug.cgi?id=3763[Bug 3763] +tests should fail if odp_crypto_op/op_enq process 0 packets + +==== https://bugs.linaro.org/show_bug.cgi?id=3764[Bug 3764] +IPsec code can occasionally damage packets + +==== https://bugs.linaro.org/show_bug.cgi?id=3772[Bug 3772] +Timer segfaults when creating and destroying multiple timer pools + +==== https://bugs.linaro.org/show_bug.cgi?id=3788[Bug 3788] +linux-gen: ipc test fails to reserve memory + +=== Known Issues +==== https://bugs.linaro.org/show_bug.cgi?id=3774[Bug 3774] +Shmem validation test runs indefinitely with 1GB huge pages + +==== https://bugs.linaro.org/show_bug.cgi?id=3787[Bug 3787] +Timeout accuracy breaks down with odd resolution requests + + == OpenDataPlane (1.19.0.0) === Summary of Changes ODP v1.19.0.0 is the official Tiger Moth final release. It incorporates final -- cgit v1.2.3