On 22/05/2020 15:06, John McNamara wrote: > Fix grammar, spelling and formatting of DPDK 20.05 release notes. > > Signed-off-by: John McNamara <john.mcnam...@intel.com> > --- > doc/guides/rel_notes/release_20_05.rst | 264 > +++++++++++++++------------------ > 1 file changed, 116 insertions(+), 148 deletions(-) > > diff --git a/doc/guides/rel_notes/release_20_05.rst > b/doc/guides/rel_notes/release_20_05.rst > index 8470690..d10a1f4 100644 > --- a/doc/guides/rel_notes/release_20_05.rst > +++ b/doc/guides/rel_notes/release_20_05.rst > @@ -56,38 +56,38 @@ New Features > Also, make sure to start the actual text at the margin. > ========================================================= > > -* **Added Trace Library and Tracepoints** > +* **Added Trace Library and Tracepoints.** > > - A native implementation of ``common trace format(CTF)`` based trace library > - has been added to provide the ability to add tracepoints in > - application/library to get runtime trace/debug information for control and > + A native implementation of "common trace format" (CTF) based trace library
Not sure if the "" are intentional? > + has been added to provide the ability to add tracepoints in an > + application/library to get runtime trace/debug information for control, and > fast APIs with minimum impact on fast path performance. > Typical trace overhead is ~20 cycles and instrumentation overhead is 1 > cycle. > Added tracepoints in ``EAL``, ``ethdev``, ``cryptodev``, ``eventdev`` and > ``mempool`` libraries for important functions. > > -* **Added APIs for RCU defer queue.** > +* **Added APIs for RCU defer queues.** > > - Added APIs to create and delete defer queue. Additional APIs are provided > + Added APIs to create and delete defer queues. Additional APIs are provided > to enqueue a deleted resource and reclaim the resource in the future. > - These APIs help the application use lock-free data structures with > + These APIs help an application use lock-free data structures with > less effort. > > * **Added new API for rte_ring.** > > - * New synchronization modes for rte_ring. > + * Introduced new synchronization modes for rte_ring. > > - Introduced new optional MT synchronization modes for rte_ring: > - Relaxed Tail Sync (RTS) mode and Head/Tail Sync (HTS) mode. > - With these mode selected, rte_ring shows significant improvements for > - average enqueue/dequeue times on overcommitted systems. > + Introduced new optional MT synchronization modes for ``rte_ring``: > + Relaxed Tail Sync (RTS) mode and Head/Tail Sync (HTS) mode. > + With these modes selected, ``rte_ring`` shows significant improvements > for > + average enqueue/dequeue times on overcommitted systems. > > - * Added peek style API for rte_ring. > + * Added peek style API for ``rte_ring``. > > - For rings with producer/consumer in RTE_RING_SYNC_ST, RTE_RING_SYNC_MT_HTS > - mode, provide an ability to split enqueue/dequeue operation into two phases > - (enqueue/dequeue start; enqueue/dequeue finish). That allows user to > inspect > - objects in the ring without removing them from it (aka MT safe peek). > + For rings with producer/consumer in ``RTE_RING_SYNC_ST``, > ``RTE_RING_SYNC_MT_HTS`` > + mode, provide the ability to split enqueue/dequeue operation into two > phases > + (enqueue/dequeue start and enqueue/dequeue finish). This allows the user > to inspect > + objects in the ring without removing them (aka MT safe peek). > > * **Added flow aging support.** > > @@ -100,14 +100,16 @@ New Features > * Added new query: ``rte_flow_get_aged_flows`` to get the aged-out flows > contexts from the port. > > -* **ethdev: Added a new value to link speed for 200Gbps** > +* **ethdev: Added a new value to link speed for 200Gbps.** > > -* **Updated Amazon ena driver.** > + Added a new ethdev value to for link speeds of 200Gbps. > > - Updated ena PMD with new features and improvements, including: > +* **Updated the Amazon ena driver.** > + > + Updated the ena PMD with new features and improvements, including: > > * Added support for large LLQ (Low-latency queue) headers. > - * Added Tx drops as new extended driver statistic. > + * Added Tx drops as a new extended driver statistic. > * Added support for accelerated LLQ mode. > * Handling of the 0 length descriptors on the Rx path. > > @@ -115,14 +117,14 @@ New Features > > Updated Hisilicon hns3 driver with new features and improvements, > including: > > - * Added support for TSO > - * Added support for configuring promiscuous and allmulticast mode for VF > + * Added support for TSO. > + * Added support for configuring promiscuous and allmulticast mode for VF. > > * **Updated Intel i40e driver.** > > Updated i40e PMD with new features and improvements, including: > > - * Enable MAC address as FDIR input set for ipv4-other, ipv4-udp and > ipv4-tcp. > + * Enabled MAC address as FDIR input set for ipv4-other, ipv4-udp and > ipv4-tcp. > * Added support for RSS using L3/L4 source/destination only. > * Added support for setting hash function in rte flow. > > @@ -139,14 +141,14 @@ New Features > Updated the Intel ice driver with new features and improvements, including: > > * Added support for DCF (Device Config Function) feature. > - * Added switch filter support for intel DCF. > + * Added switch filter support for Intel DCF. > > * **Updated Marvell OCTEON TX2 ethdev driver.** > > - Updated Marvell OCTEON TX2 ethdev driver with traffic manager support with > - below features. > + Updated Marvell OCTEON TX2 ethdev driver with traffic manager support, > + including: > > - * Hierarchial Scheduling with DWRR and SP. > + * Hierarchical Scheduling with DWRR and SP. > * Single rate - Two color, Two rate - Three color shaping. > > * **Updated Mellanox mlx5 driver.** > @@ -158,52 +160,28 @@ New Features > * Added support for configuring Hairpin queue data buffer size. > * Added support for jumbo frame size (9K MTU) in Multi-Packet RQ mode. > * Removed flow rules caching for memory saving and compliance with ethdev > API. > - * Optimized the memory consumption of flow. > - * Added support for flow aging based on hardware counter. > - * Added support for flow pattern with wildcard VLAN item (without VID > value). > - * Updated support for matching on GTP header, added match on GTP flags. > - > -* **Added Chacha20-Poly1305 algorithm to Cryptodev API.** > - > - Chacha20-Poly1305 AEAD algorithm can now be supported in Cryptodev. > - > -* **Updated the AESNI MB crypto PMD.** > - > - * Added support for intel-ipsec-mb version 0.54. > - * Updated the AESNI MB PMD with AES-256 DOCSIS algorithm. > - * Added support for synchronous Crypto burst API. > - > -* **Updated the AESNI GCM crypto PMD.** > - > - * Added support for intel-ipsec-mb version 0.54. > - > -* **Updated the ZUC crypto PMD.** > - > - * Added support for intel-ipsec-mb version 0.54. > - * Updated the PMD to support Multi-buffer ZUC-EIA3, > - improving performance significantly, when using > - intel-ipsec-mb version 0.54 > - > -* **Updated the SNOW3G crypto PMD.** > - > - * Added support for intel-ipsec-mb version 0.54. > + * Optimized the memory consumption of flows. > + * Added support for flow aging based on hardware counters. > + * Added support for flow pattern with wildcard VLAN items (without VID > value). > + * Updated support for matching on GTP headers, added match on GTP flags. > > -* **Updated the KASUMI crypto PMD.** > +* **Added additional algorithms to the Cryptodev API.** > > - * Added support for intel-ipsec-mb version 0.54. > + Added additional algorithms and updated support to the Cryptodev PMD and > + APIs, including: > > -* **Added a new driver for Intel Foxville I225 devices.** > + * Added support for intel-ipsec-mb version 0.54 to the following PMDs: > AESNI > + MB, AESNI GCM, ZUC, KASUMI, SNOW 3G. > > - Added the new ``igc`` net driver for Intel Foxville I225 devices. See the > - :doc:`../nics/igc` NIC guide for more details on this new driver. > + * Added support for Chacha20-Poly1305 AEAD algorithm. > > -* **Updated Broadcom bnxt driver.** > + * Updated the ZUC crypto PMD to support Multi-buffer ZUC-EIA3, improving > + performance significantly, when using intel-ipsec-mb version 0.54 > > - Updated Broadcom bnxt driver with new features and improvements, including: > + * AESNI MB crypto PMD: > > - * Added support for host based flow table management > - * Added flow counters to extended stats > - * Added PCI function stats to extended stats > + * Updated the AESNI MB PMD with AES-256 DOCSIS algorithm. > + * Added support for synchronous Crypto burst API. > > * **Added handling of mixed crypto algorithms in QAT PMD for GEN2.** > > @@ -212,7 +190,7 @@ New Features > when running on GEN2 QAT hardware with particular firmware versions > (GEN3 support was added in DPDK 20.02). > > -* **Added plain SHA-1,224,256,384,512 support to QAT PMD.** > +* **Added plain SHA-1, 224, 256, 384, 512 support to QAT PMD.** > > Added support for plain SHA-1, SHA-224, SHA-256, SHA-384 and SHA-512 hashes > to QAT PMD. > @@ -220,26 +198,40 @@ New Features > * **Added AES-GCM/GMAC J0 support to QAT PMD.** > > Added support for AES-GCM/GMAC J0 to Intel QuickAssist Technology PMD. > User can > - use this feature by passing zero length IV in appropriate xform. For more > - info please refer to rte_crypto_sym.h J0 comments. > + use this feature by passing a zero length IV in the appropriate xform. For > more > + info refer to the doxygen comments in ``rte_crypto_sym.h`` for ``J0``. > > * **Updated the QAT PMD for AES-256 DOCSIS.** > > - Added AES-256 DOCSIS algorithm support to QAT PMD. > + Added AES-256 DOCSIS algorithm support to the QAT PMD. > > -* **Added QAT intermediate buffer too small handling in QAT compression > PMD.** > +* **Added QAT intermediate undersized buffer handling in QAT compression > PMD.** > > - Added a special way of buffer handling when internal QAT intermediate > buffer > - is too small for Huffman dynamic compression operation. Instead of falling > + Added special buffer handling when the internal QAT intermediate buffer is > + too small for the Huffman dynamic compression operation. Instead of falling > back to fixed compression, the operation is now split into multiple smaller > - dynamic compression requests (possible to execute on QAT) and their results > - are then combined and copied into the output buffer. This is not possible > if > - any checksum calculation was requested - in such case the code falls back > to > - fixed compression as before. > + dynamic compression requests (which are possible to execute on QAT) and > + their results are then combined and copied into the output buffer. This is > + not possible if any checksum calculation was requested - in such cases the > + code falls back to fixed compression as before. > + > +* **Added a new driver for Intel Foxville I225 devices.** > + > + Added the new ``igc`` net driver for Intel Foxville I225 devices. See the > + :doc:`../nics/igc` NIC guide for more details on this new driver. > + > +* **Updated Broadcom bnxt driver.** > + > + Updated the Broadcom bnxt driver with new features and improvements, > including: > + > + * Added support for host based flow table management. > + * Added flow counters to extended stats. > + * Added PCI function stats to extended stats. > > * **Updated the turbo_sw bbdev PMD.** > > - Supported large size code blocks which does not fit in one mbuf segment. > + Added support for large size code blocks which do not fit in one mbuf > + segment. > > * **Added Intel FPGA_5GNR_FEC bbdev PMD.** > > @@ -255,31 +247,32 @@ New Features > accurate load balancing. > * Improved behavior on high-core count systems. > * Reduced latency in low-load situations. > - * Extended DSW xstats with migration- and load-related statistics. > + * Extended DSW xstats with migration and load-related statistics. > + > +* **Updated ipsec-secgw sample application.** > > -* **Updated ipsec-secgw sample application with following features.** > + Updated ``ipsec-secgw`` sample application with following features: > > - * Updated ipsec-secgw application to add event based packet processing. > - The worker thread(s) would receive events and submit them back to the > - event device after the processing. This way, multicore scaling and HW > - assisted scheduling is achieved by making use of the event device > - capabilities. The event mode currently supports only inline IPsec > - protocol offload. > + * Updated the application to add event based packet processing. The worker > + thread(s) would receive events and submit them back to the event device > + after the processing. This way, multicore scaling and HW assisted > + scheduling is achieved by making use of the event device capabilities. > The > + event mode currently only supports inline IPsec protocol offload. > > - * Updated ipsec-secgw application to support key sizes for AES-192-CBC, > - AES-192-GCM, AES-256-GCM algorithms. > + * Updated the application to support key sizes for AES-192-CBC, > AES-192-GCM, > + AES-256-GCM algorithms. > > - * Added IPsec inbound load-distribution support for ipsec-secgw application > - using NIC load distribution feature(Flow Director). > + * Added IPsec inbound load-distribution support for the application using > + NIC load distribution feature(Flow Director). > > * **Updated Telemetry Library.** > > - The updated Telemetry library has many improvements on the original version > - to make it more accessible and scalable: > + The updated Telemetry library has been significantly in relation to the > + original version to make it more accessible and scalable: > > - * It enables DPDK libraries and applications provide their own specific > - telemetry information, rather than being limited to what could be > reported > - through the metrics library. > + * It now enables DPDK libraries and applications to provide their own > + specific telemetry information, rather than being limited to what could > be > + reported through the metrics library. > > * It is no longer dependent on the external Jansson library, which allows > Telemetry be enabled by default. > @@ -287,57 +280,47 @@ New Features > * The socket handling has been simplified making it easier for clients to > connect and retrieve information. > > -* **Added rte_graph library.** > +* **Added the rte_graph library.** > > - Graph architecture abstracts the data processing functions as a ``node`` > and > - ``links`` them together to create a complex ``graph`` to enable > reusable/modular > - data processing functions. The graph library provides API to enable graph > - framework operations such as create, lookup, dump and destroy on graph and > node > - operations such as clone, edge update, and edge shrink, etc. > - The API also allows to create the stats cluster to monitor per graph and > per node stats. > + The Graph architecture abstracts the data processing functions as a > ``node`` > + and ``links`` them together to create a complex ``graph`` to enable > + reusable/modular data processing functions. The graph library provides APIs > + to enable graph framework operations such as create, lookup, dump and > + destroy on graph and node operations such as clone, edge update, and edge > + shrink, etc. The API also allows the creation of a stats cluster to > monitor > + per graph and per node statistics. > > -* **Added rte_node library which consists of a set of packet processing > nodes.** > +* **Added the rte_node library.** > > - The rte_node library that consists of nodes used by rte_graph library. Each > - node performs a specific packet processing function based on application > - configuration. The following nodes are added: > + Added the ``rte_node`` library that consists of nodes used by ``rte_graph`` > + library. Each node performs a specific packet processing function based on > + the application configuration. The following nodes are added: > > - * Null node: Skeleton node that defines the general structure of a node. > - * Ethernet device node: Consists of ethernet Rx/Tx nodes as well as > ethernet > + * Null node: A skeleton node that defines the general structure of a node. > + * Ethernet device node: Consists of Ethernet Rx/Tx nodes as well as > Ethernet > control APIs. > - * IPv4 lookup node: Consists of ipv4 extract and lpm lookup node. Routes > can > - be configured by the application through ``rte_node_ip4_route_add`` > function. > - * IPv4 rewrite node: Consists of ipv4 and ethernet header rewrite > functionality > - that can be configured through ``rte_node_ip4_rewrite_add`` function. > + * IPv4 lookup node: Consists of IPv4 extract and LPM lookup node. Routes > can > + be configured by the application through the ``rte_node_ip4_route_add`` > + function. > + * IPv4 rewrite node: Consists of IPv4 and Ethernet header rewrite > + functionality that can be configured through the > + ``rte_node_ip4_rewrite_add`` function. > * Packet drop node: Frees the packets received to their respective mempool. > > * **Added new l3fwd-graph sample application.** > > - Added an example application ``l3fwd-graph``. It demonstrates the usage of > graph > - library and node library for packet processing. In addition to the library > usage > - demonstration, this application can use for performance comparison with > existing > - ``l3fwd`` (The static code without any nodes) with the modular > ``l3fwd-graph`` > - approach. > + Added an example application ``l3fwd-graph``. This demonstrates the usage > of > + graph library and node library for packet processing. In addition to the > + library usage demonstration, this application can be used for performance > + comparison with existing ``l3fwd`` (The static code without any nodes) with > + the modular ``l3fwd-graph`` approach. > > -* **Updated testpmd application.** > +* **Updated the testpmd application.** > > * Added a new cmdline option ``--rx-mq-mode`` which can be used to test > PMD's > behaviour on handling Rx mq mode. > No need for the sub-bullet here > > -Removed Items > -------------- > - > -.. This section should contain removed items in this release. Sample format: > - > - * Add a short 1-2 sentence description of the removed item > - in the past tense. > - > - This section is a comment. Do not overwrite or remove it. > - Also, make sure to start the actual text at the margin. > - ========================================================= > - > - > API Changes > ----------- > > @@ -354,7 +337,7 @@ API Changes > ========================================================= > > * mempool: The API of ``rte_mempool_populate_iova()`` and > - ``rte_mempool_populate_virt()`` changed to return 0 instead of -EINVAL > + ``rte_mempool_populate_virt()`` changed to return 0 instead of ``-EINVAL`` > when there is not enough room to store one object. > > > @@ -376,21 +359,6 @@ ABI Changes > * No ABI change that would break compatibility with DPDK 20.02 and 19.11. > > > -Known Issues > ------------- > - > -.. This section should contain new known issues in this release. Sample > format: > - > - * **Add title in present tense with full stop.** > - > - Add a short 1-2 sentence description of the known issue > - in the present tense. Add information on any known workarounds. > - > - This section is a comment. Do not overwrite or remove it. > - Also, make sure to start the actual text at the margin. > - ========================================================= > - > - > Tested Platforms > ---------------- > > I just sent a patch to note gcc 10 support. Aside from minor comments above, LGTM. Acked-by: Kevin Traynor <ktray...@redhat.com>