From patchwork Sun Nov 5 18:00:07 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Github ODP bot X-Patchwork-Id: 117990 Delivered-To: patch@linaro.org Received: by 10.140.22.164 with SMTP id 33csp1956713qgn; Sun, 5 Nov 2017 10:00:47 -0800 (PST) X-Google-Smtp-Source: ABhQp+Q7HO6wYYLmdchigOgAheeWv7i852Afqo3zKPQeTJebH00C6Vds7jaBl5F6xGVOeSyQzljk X-Received: by 10.200.47.77 with SMTP id k13mr19249832qta.298.1509904846950; Sun, 05 Nov 2017 10:00:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1509904846; cv=none; d=google.com; s=arc-20160816; b=X4zNlLwfAOyntfg4QJI0zQ78K8wcXIe/vfDpLrlWpINO0YIOkhXjvlDopEqbtsfXl/ kbJMGLSaPPsKQThg1t5i5/y2GmwvpxMi+ttifD1li5AJYGbc8T27BEKWVaOMHmBSdZv5 qpWH1o928xh6A6hHvHcmsW3id6t89usZGXcr3meND1j2v/+6m5tCQTkHn80VlxeSjRrS OLD7z8Ls7Sz9lyJ0eIDD4pr2MEZigv07gb599qnF4fgZf9S08XLZzmR/3mt+ffgKBbpm oo81tRviSJ1BpIAj0om1cXBc3yoQG1uU9976kgpJMfu5z0cDE1hlh6HFNF2pEwDgzIh2 8TfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:github-pr-num :references:in-reply-to:message-id:date:to:from:delivered-to :arc-authentication-results; bh=OAjioj9SWIOaUIY2mhxxbJUfj3FVRo32qFmoVod3Al4=; b=MgtJPEceFcC8munRDmS7E1r7CAwUmQTV38xhbiwHi7SuhQ5n/9AqV2ZQr6JRiK23H/ 7p+pLIcJwKASK8wSIdgUNYt4r98tJ3zUqLFEeAXD1yLykN9z0+OpN5nTLrClTs6rsBRT alPxIk0nepMiYUGfk+rqKLvzF5ofsoJJwyg+Bad3H2a/5Zar04TCmmhKqiJJGnVp6uth PwTIp8OvNWJyBpVfmjSNnWl/g3/liwkIUKJOHck2QpdBFiXhMC1vraxvhvYamQYHv84x 4AwxsKywoi4mOcJQW+S66WEUlbBxGt7wVXN9rQPX3ZPEa9w4/z9UTFvLfbjrfcFRmLwD u7gA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.197.127.237 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=yandex.ru Return-Path: Received: from lists.linaro.org (ec2-54-197-127-237.compute-1.amazonaws.com. [54.197.127.237]) by mx.google.com with ESMTP id s64si2422685qkf.114.2017.11.05.10.00.46; Sun, 05 Nov 2017 10:00:46 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.197.127.237 as permitted sender) client-ip=54.197.127.237; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.197.127.237 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=yandex.ru Received: by lists.linaro.org (Postfix, from userid 109) id A882F60BD7; Sun, 5 Nov 2017 18:00:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id EAFDA60915; Sun, 5 Nov 2017 18:00:16 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 26BE26069F; Sun, 5 Nov 2017 18:00:13 +0000 (UTC) Received: from forward101o.mail.yandex.net (forward101o.mail.yandex.net [37.140.190.181]) by lists.linaro.org (Postfix) with ESMTPS id 5302360695 for ; Sun, 5 Nov 2017 18:00:11 +0000 (UTC) Received: from mxback9o.mail.yandex.net (mxback9o.mail.yandex.net [IPv6:2a02:6b8:0:1a2d::23]) by forward101o.mail.yandex.net (Yandex) with ESMTP id 9217F13421AB for ; Sun, 5 Nov 2017 21:00:09 +0300 (MSK) Received: from smtp2o.mail.yandex.net (smtp2o.mail.yandex.net [2a02:6b8:0:1a2d::26]) by mxback9o.mail.yandex.net (nwsmtp/Yandex) with ESMTP id 0kApTlj3pU-09W0pkAr; Sun, 05 Nov 2017 21:00:09 +0300 Received: by smtp2o.mail.yandex.net (nwsmtp/Yandex) with ESMTPSA id LmP3juoudv-08bCfGZx; Sun, 05 Nov 2017 21:00:08 +0300 (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (Client certificate not present) From: Github ODP bot To: lng-odp@lists.linaro.org Date: Sun, 5 Nov 2017 21:00:07 +0300 Message-Id: <1509904807-17121-2-git-send-email-odpbot@yandex.ru> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1509904807-17121-1-git-send-email-odpbot@yandex.ru> References: <1509904807-17121-1-git-send-email-odpbot@yandex.ru> Github-pr-num: 275 Subject: [lng-odp] [PATCH v1 1/1] changelog: updates for odp v1.16.0.0 X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" From: Bill Fischofer Signed-off-by: Bill Fischofer --- /** Email created from pull request 275 (Bill-Fischofer-Linaro:v1.16-changelog) ** https://github.com/Linaro/odp/pull/275 ** Patch: https://github.com/Linaro/odp/pull/275.patch ** Base sha: f318c88f26b15140dda243e6a1d27e3c8f9d275b ** Merge commit sha: 35578b1d9093c6db5eceb98a64cbfea1977c8d1e **/ CHANGELOG | 194 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 194 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 866e51e95..bfd489bd1 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,197 @@ +== OpenDataPlane (1.16.0.0) +=== New Features +ODP v1.16.0.0 is the final preview release before the official release of +Tiger Moth. It introduces new APIs and extensions, as well as bug fixes and +functional improvements. + +==== APIs +The following new and changed APIs are included in this release: + +===== Packet API Changes + +* The `odp_packet_unshared_len()` API is removed. Testing showed that this +API was non-essential and conflicted with the goal of implementation +efficiency. +* The `odp_print_packet_data()` API is added. This permits packet data to +be logged along with platform-defined metadata for debugging or diagnostic +purposes. + +===== PktIO API Changes + +* The `loop_supported` attribute of the `odp_pktio_capability_t` struct is +deprecated since this is redundant. The `enable_loop` field of the +`odp_pktio_config_t` struct (which is returned as part of the +`odp_packet_capability_t` struct) is the proper way to determine whether a +PktIO supports loopback mode. + +===== System Info API Changes + +* The documentation for the `odp_sys_huge_page_size()` API is updated to +clarify that a 0 return code indicates that huge pages are not supported by +this platform. +* The `odp_sys_huge_page_size_all()` API is added to return all +huge page sizes supported by this platform. + +===== Timer API Changes + +* The documentation for the various parameters contained in the +`odp_timer_pool_param_t` struct are expanded and clarified. + +=== Miscellaneous Fixes and Improvements + +==== Default Packet Headroom +The default packet headroom in `odp-linux` has been increased from 66 to +128 bytes for better compatibility with `odp-dpdk`. + +==== Zero-copy Packet References +The `odp-linux` reference implementation now fully supports zero-copy +packet references. Previously these APIs were implemented via packet copies, +which while functionally correct, were not how these APIs are intended to +operate. + +==== DPDK Zero-copy I/O support +The `--enable-dpdk-zero-copy` `configure` option is added to allow DPDK PktIO +devices to avoid data copies, leading to improved performance. + +==== DPDK Checksum offload support +DPDK PktIO now makes use of RX and TX IP/UDP/TCP checksum offload. + +==== Shared memory stored in /dev/shm +In the `odp-linux` reference implementation, shared memory is now backed to +`/dev/shm` rather than `/tmp` for better reliability and robustness. This may +be overridden as part of ODP build-time customization if desired. + +==== IPC Improvements +PktIO IPC support has received improvements in both performance and +reliability and is now suitable for development use. + +=== Dependency Changes + +==== Dependency on autoconf-archive removed +Since some build environments do not supply autoconf-archive, this dependency +is removed. + +==== DPDK support upgraded to 17.08 release +The ODP DPDK Packet I/O support has been upgraded to work with the DPDK 17.08 +release. + +==== Added support for OpenSSL 1.1.x releases +ODP use of OpenSSL for crypto processing has been upgraded to allow use of +OpenSSL 1.1.x. + +=== Build System Restructure +The ODP build system has been overhauled to support more comprehensive and +efficient automated testing under Travis CI. Greater use of Autoconf is now +made to control ODP configuration and build options, permitting greater +environmental flexibility. This includes an expanded range of test coverage, +including cross-compilation support for ARMv8, MIPS,and Power architectures, +as well as testing under the latest levels of GCC and clang. + +=== Arm Architecture Support Improvements + +* ARMv8 generic timer support is now included +* Improved time efficiency and accuracy by using native ARMv8 time/clock +instructions. + +==== Test Improvements +The `test` directory has been reorganized and streamlined. Platform-specific +tests are moved from `test/linux-generic` to +`platform/linux-generic/test/`. As a result, the `test/common_plat` +directory is deleted so that `test/validation`, `test/performance`, etc. are +now used for all platform-independent tests. + +==== Examples Improvements + +===== IPv4 Fragmentation Reassembly Example +The `ipfragreass` example program has been added to demonstrate IPv4 fragment +reassembly. + +===== ODP Generator Improvements +The `odp_generator` example program now uses packet references for improved +performance in UDP and ICMP traffic. The program also now makes use of HW +checksum offload support, when available. + +=== Documentation Improvements + +* The ODP Users Guide has clarified usage information about the ODP time +APIs for better portability. +* A section has been added to the ODP Users Guide on API specification +principles. This clarifies expected behavior of ODP applications and +implementations and makes explicit what the specification means by "undefined +behavior". +* All Doxygen used in ODP is upgraded to conform to the stricter documentation +requirements introduced by Doxygen 1.8.13. + +=== Bug Fixes + +==== https://bugs.linaro.org/show_bug.cgi?id=2254[Bug 2254] +check-odp: valgrind generates "No rule to make target" + +==== https://bugs.linaro.org/show_bug.cgi?id=2812[Bug 2812] +Helper/test/process fails on a single core system + +==== https://bugs.linaro.org/show_bug.cgi?id=2861[Bug 2861] +Remove redundant loop_support parameter in pktio capability + +==== https://bugs.linaro.org/show_bug.cgi?id=2938[Bug 2938] +Make file deps failure + +==== https://bugs.linaro.org/show_bug.cgi?id=2976[Bug 2976] +IP headers checksum functions are incorrect + +==== https://bugs.linaro.org/show_bug.cgi?id=3024[Bug 3024] +odp_traffic_mngr example is broken + +==== https://bugs.linaro.org/show_bug.cgi?id=3026[Bug 3026] +pktio_ipc_run test can fail due to segfault + +==== https://bugs.linaro.org/show_bug.cgi?id=3043[Bug 3043] +User guide error (packet diagram fix) + +==== https://bugs.linaro.org/show_bug.cgi?id=3052[Bug 3052] +api-next out of tree build broken + +==== https://bugs.linaro.org/show_bug.cgi?id=3066[Bug 3066] +Cross compile broken for ARMv8 + +==== https://bugs.linaro.org/show_bug.cgi?id=3126[Bug 3126] +IPC pktio test fails with taskset -c 1-2 + +==== https://bugs.linaro.org/show_bug.cgi?id=3177[Bug 3177] +Test case for classification enable + +==== https://bugs.linaro.org/show_bug.cgi?id=3182[Bug 3182] +Memory allocation checks (in traffic manager) + +==== https://bugs.linaro.org/show_bug.cgi?id=3216[Bug 3216] +Adding --enable-helper-linux configure flag breaks build + +==== https://bugs.linaro.org/show_bug.cgi?id=3238[Bug 3238] +Doxygen warnings on helper header files + +==== https://bugs.linaro.org/show_bug.cgi?id=3241[Bug 3241] +codecov: _odp_packet_cmp_data is not covered + +==== https://bugs.linaro.org/show_bug.cgi?id=3242[Bug 3242] +setup_pktio_entry missing unlock + +==== https://bugs.linaro.org/show_bug.cgi?id=3249[Bug 3249] +odp_cpu_hz() does not work on all Linux distros + +==== https://bugs.linaro.org/show_bug.cgi?id=3262[Bug 3262] +Missing doxygen detected by Travis + +==== https://bugs.linaro.org/show_bug.cgi?id=3289[Bug 3289] +'num_queues' isn't ignored when "classifier_enable" is enabled + +==== https://bugs.linaro.org/show_bug.cgi?id=3300[Bug 3300] +Validation tests cannot be disabled after commit b4d17b1 + +=== Known Issues + +==== https://bugs.linaro.org/show_bug.cgi?id=3245[Bug 3245] +Cannot run l2fwd application on Cavium ThunderX platform + == OpenDataPlane (1.15.0.0) === New Features ODP v1.15.0.0 continues the preview of Tiger Moth, introducing new APIs and