This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "".
The annotated tag, v1.21.0.0 has been created at 62b0005078c07a7f44f084dc6785265a3607e6f0 (tag) tagging 8b0ac26e358b7632f891557be07c8c1f43a29a4a (commit) replaces v1.20.0.0 tagged by Maxim Uvarov on Mon Jan 28 16:48:09 2019 +0300
- Log ----------------------------------------------------------------- == OpenDataPlane (1.21.0.0) === Summary of Changes ODP v1.21.0.0 adds two new API families as well as several small improvements.
==== APIs ===== Compression Support A new family of APIs is added that provides for session-oriented support for packet data compression and decompression. Compression sessions define the parameters used to control compression operations and their associated integrity hashes. Once created, sessions are input parameters to the new `odp_comp_op()` and `odp_comp_op_enq()` APIs that provide access to synchronous and asynchronous compression services on packets.
Associated with the completion of asynchronous compression operations, a new packet subtype, `ODP_EVENT_PACKET_COMP` is defined. This subtype indicates that the packet includes additional metadata (retrievable via `odp_comp_result()`) that provides the result of the requested operation.
A number of different compression and associated hash algorithms are defined, which are communicated with three new capability APIs:
`odp_comp_capability()`:: Provides information about general compression related capabilities offered by this implementation
`odp_comp_alg_capability()`:: Provides details about the capabilities of individual compression algorithms supported.
`odp_comp_hash_alg_capability()`:: Provides details about the capabilities of individual hash algorithms supported for use with compression.
===== Flow Aware Scheduler Support A new capability for flow aware scheduling is added. As part of this, the scheduler now supports capabilities and configurability. As a result, the initialization sequence for applications that make use of the ODP scheduler has changed slightly. The new API call sequence is: [source,c] ----- odp_schedule_capability() odp_schedule_config_init() odp_schedule_config() odp_schedule() ----- It is a programming error to call `odp_schedule()` (or its variants) without having first initialized the scheduler with an `odp_schedule_config()` call. This call may only be issued once per ODP instance as scheduler configuration is global.
By default the scheduler operates as before. When configured to operate in flow aware mode, the scheduler will now respect event flow ids (managed by the new `odp_event_flow_id()` and `odp_event_flow_id_set()` APIs) when making scheduling decisions. This means that flow identification is a combination of event flow id and queue id. For example, when operating in flow aware mode the scheduler may dispatch events from an atomic queue to multiple threads concurrently, as long as those events have different flow ids. For applications that process large numbers of lightweight flows that have limited context needs, this can lead to throughput improvements as well as reduced implementation memory footprint.
==== DPDK v18.11 Support The latest LTS release of DPDK (v18.11) is now supported by ODP. Support for the previous LTS release (v17.11) is retained. Prior versions of DPDK are no longer supported.
==== Queue Capabilities Moved to Scheduler As part of the introduction of flow-aware scheduling, capabilities associated with `SCHED` queues have been moved from the `odp_queue_capabilities_t` struct returned by `odp_queue_capabilities()` to the new `odp_sched_capabilities_t` struct returned by `odp_sched_capabilities()`.
Capabilities moved include `max_ordered_locks`, `max_sched_groups`, and `sched_prios`. The `max_sched_groups` capability is renamed `max_groups`. In addition, `max_queues`, `max_queue_size`, and the support capabilities for lock free and wait free non blocking queues is now part of the scheduler capabilities.
In support of flow aware scheduling mode, the `max_flows` scheduler capability is renamed `max_flow_id`. A value of 0 indicates that flow aware mode scheduling is not available in this ODP implementation.
=== Test/Validation Improvements ==== Travis readability improvement The "BUILD_ONLY` environment variable has been renamed `CHECK` for improved output readability.
==== Flow aware scheduler testing As part of flow aware mode, scheduler validation tests will now test this mode if `odp_schedule_capability()` indicates that flow-aware mode is supported.
=== Bug Fixes ==== Unnumbered Bugs/Issues
* Latest version of netmap `nm_ring_empty()` implementation has changed. PktIO netmap support updated to support this as well as previous releases.
* Improved compatibility of PktIO socket support with latest versions of the clang compiler.
* Add match pattern for missing DPDK PMD drivers for improved compatibility.
Balasubramanian Manoharan (1): api: comp: compression specification
Bill Fischofer (3): doc: userguide: add documentation for flow aware scheduler mode doc: userguide: add section for compression support changelog: add change log updates for odp v1.21.0.0
Dmitry Eremin-Solenikov (31): api: queue, schedule: move scheduler capabilities to scheduler linux-gen: move NUM_INTERNAL_QUEUES to config linux-gen: queue, schedule: move scheduler capabilities to scheduler example, tests: move scheduler capabilities to scheduler api: queue, schedule: move scheduled queue capabilities to sched linux-gen: queue, schedule: move scheduled queue capabilities to sched example, tests: move scheduled queue capabilities to sched api: schedule: add scheduler config and start API api: schedule: add scheduler flow aware mode linux-gen: schedule: rename config to get_config linux-gen: implement odp_schedule_config() API call validation: add calls to odp_schedule_config() performance: add calls to odp_schedule_config() examples: add calls to odp_schedule_config() validation: scheduler use schedule_config instead of capabilities linux-gen: event: support flow-awareness API api: event: define ODP_EVENT_PACKET_COMP api: fix compression API headers linux-gen: add compression ABI file linux-gen: event: define ODP_EVENT_PACKET_COMP validation: add compression tests linux-gen: comp: add stub implementation linux-gen: add miniz library at 3a884afaa7a9eefb4eb80041aee6e7995a2f5215 linux-gen: miniz local modifications linux-gen: comp: add deflate/zlib implementation based on miniz validation: add comp_main to .gitignore linux-gen: miniz: disable unaligned loads/stores to fix compilation with clang m4: move -lnuma detection to global file build: support detection of DPDK through pkg-config build: provide PKG_CHECK_MODULES_STATIC implementation linux-gen: fix compiling dpdk pktio with Clang
Matias Elo (8): linux-gen: netmap: update ring->head in netmap_recv_desc() linux-gen: socket_mmap: fix build with older clang versions linux-gen: dpdk: fix build with no pmd drivers travis: add CentOS 7 build test travis: rename BUILD_ONLY to CHECK test: odp_pktio_ordered: add missing schedule_config initialization linux-gen: dpdk: add a fallback value for the number of numa nodes travis: add dpdk 18.11 test
Maxim Uvarov (1): changelog: updates for odp v1.21.0.0
Petri Savolainen (7): linux-gen: dpdk: support DPDK version up to v18.11 dependencies: dpdk: list supported versions api: sched: max_flow_id capability linux-gen: sched: check that config has been done validation: sched: add flow aware test case linux-gen: sched: dummy flow aware implementation dependencies: add libconfig package name
-----------------------------------------------------------------------
hooks/post-receive