X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Frel_notes%2Frelease_19_08.rst;h=ac496b37a165e6971fbe47fd883d2f412f36dc35;hb=716459740232aceb39cc4cdc411ad76acc857c50;hp=8c3932d0634301d7c63d85b30d698fd3fa00fa70;hpb=4279b54e28385c4d787c7bc03c819c40949caed0;p=dpdk.git diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst index 8c3932d063..ac496b37a1 100644 --- a/doc/guides/rel_notes/release_19_08.rst +++ b/doc/guides/rel_notes/release_19_08.rst @@ -1,6 +1,8 @@ .. SPDX-License-Identifier: BSD-3-Clause Copyright 2019 The DPDK contributors +.. include:: + DPDK Release 19.08 ================== @@ -54,6 +56,27 @@ New Features Also, make sure to start the actual text at the margin. ========================================================= +* **Added MCS lock.** + + MCS lock provides scalability by spinning on a CPU/thread local variable + which avoids expensive cache bouncings. + It provides fairness by maintaining a list of acquirers and passing + the lock to each CPU/thread in the order they acquired the lock. + +* **Updated the EAL Pseudo-random Number Generator.** + + The lrand48()-based rte_rand() function is replaced with a + DPDK-native combined Linear Feedback Shift Register (LFSR) + pseudo-random number generator (PRNG). + + This new PRNG implementation is multi-thread safe, provides + higher-quality pseudo-random numbers (including full 64 bit + support) and improved performance. + + In addition, is extended with a new function + rte_rand_max() which supplies unbiased, bounded pseudo-random + numbers. + * **Updated the bnxt PMD.** Updated the bnxt PMD. The major enhancements include: @@ -68,6 +91,28 @@ New Features of Ethernet controllers. These controllers support link speeds up to 200Gbps, 50G PAM-4, and PCIe 4.0. +* **Added hinic PMD.** + + Added the new ``hinic`` net driver for Huawei Intelligent PCIE Network + Adapters based on the Huawei Ethernet Controller Hi1822. + See the :doc:`../nics/hinic` guide for more details on this new driver. + +* **Updated the ice driver.** + + Updated ice driver with new features and improvements, including: + + * Enabled Tx outer/inner L3/L4 checksum offload. + * Enabled generic filter framework and supported switch filter. + * Supported UDP tunnel port add. + +* **Updated Mellanox mlx5 driver.** + + Updated Mellanox mlx5 driver with new features and improvements, including: + + * Updated the packet header modification feature. Added support of TCP header + sequence number and acknowledgment number modification. + * Added support for match on ICMP/ICMP6 code and type. + * **Updated Solarflare network PMD.** Updated the Solarflare ``sfc_efx`` driver with changes including: @@ -87,6 +132,77 @@ New Features high performance * Added multi-queue support to allow one af_xdp vdev with multiple netdev queues + * Enabled need_wakeup feature which can provide efficient support for case + that application and driver executing on the same core. + +* **Enabled infinite Rx in the PCAP PMD.** + + Added an infinite Rx feature which allows packets in the Rx PCAP of a PCAP + device to be received repeatedly at a high rate. This can be useful for quick + performance testing of DPDK apps. + +* **Added a FPGA_LTE_FEC bbdev PMD.** + + Added the new ``fpga_lte_fec`` bbdev driver for the Intel® FPGA PAC + (Programmable Acceleration Card) N3000. See the + :doc:`../bbdevs/fpga_lte_fec` BBDEV guide for more details on this new driver. + +* **Updated TURBO_SW bbdev PMD.** + + Updated the ``turbo_sw`` bbdev driver with changes including: + + * Added option to build the driver with or without dependency of external + SDK libraries. + * Added support for 5GNR encode/decode operations. + +* **Updated the QuickAssist Technology (QAT) symmetric crypto PMD.** + + Added support for digest-encrypted cases where digest is appended + to the data. + +* **Added Intel QuickData Technology PMD** + + The PMD for Intel\ |reg| QuickData Technology, part of + Intel\ |reg| I/O Acceleration Technology `(Intel I/OAT) + `_, + allows data copies to be done by hardware instead + of via software, reducing cycles spent copying large blocks of data in + applications. + +* **Added Marvell OCTEON TX2 drivers.** + + Added the new ``ethdev``, ``eventdev``, ``mempool``, ``eventdev Rx adapter``, + ``eventdev Tx adapter``, ``eventdev Timer adapter`` and ``rawdev DMA`` + drivers for various HW coprocessors available in ``OCTEON TX2`` SoC. + + See :doc:`../platform/octeontx2` and driver informations: + + * :doc:`../nics/octeontx2` + * :doc:`../mempool/octeontx2` + * :doc:`../eventdevs/octeontx2` + * :doc:`../rawdevs/octeontx2_dma` + +* **Introduced NTB PMD.** + + Added a PMD for Intel NTB (Non-transparent Bridge). This PMD implemented + handshake between two separate hosts and can share local memory for peer + host to directly access. + +* **Updated IPSec library Header Reconstruction.** + + Updated the IPSec library with ECN and DSCP field header reconstruction + feature followed by RFC4301. The IPSec-secgw sample application is also + updated to support this feature by default. + +* **Updated telemetry library for global metrics support.** + + Updated ``librte_telemetry`` to fetch the global metrics from the + ``librte_metrics`` library. + +* **Added new telemetry mode for l3fwd-power application.** + + Added telemetry mode to l3fwd-power application to report + application level busyness, empty and full polls of rte_eth_rx_burst(). Removed Items @@ -121,9 +237,38 @@ API Changes Also, make sure to start the actual text at the margin. ========================================================= +* The ``rte_mem_config`` structure has been made private. The new accessor + ``rte_mcfg_*`` functions were introduced to provide replacement for direct + access to the shared mem config. + * The network structures, definitions and functions have been prefixed by ``rte_`` to resolve conflicts with libc headers. +* malloc: The function ``rte_malloc_set_limit`` was never implemented + is deprecated and will be removed in a future release. + +* eventdev: No longer marked as experimental. + + The eventdev functions are no longer marked as experimental, and have + become part of the normal DPDK API and ABI. Any future ABI changes will be + announced at least one release before the ABI change is made. There are no + ABI breaking changes planned. + +* ip_frag: IP fragmentation library converts input mbuf into fragments + using input MTU size via ``rte_ipv4_fragment_packet`` interface. + Once fragmentation is done, each ``mbuf->ol_flags`` are set to enable IP + checksum H/W offload irrespective of the platform capability. + Cleared IP checksum H/W offload flag from the library. The application must + set this flag if it is supported by the platform and application wishes to + use it. + +* ip_frag: IP reassembly library converts the list of fragments into a + reassembled packet via ``rte_ipv4_frag_reassemble_packet`` interface. + Once reassembly is done, ``mbuf->ol_flags`` are set to enable IP checksum H/W + offload irrespective of the platform capability. Cleared IP checksum H/W + offload flag from the library. The application must set this flag if it is + supported by the platform and application wishes to use it. + ABI Changes ----------- @@ -140,6 +285,31 @@ ABI Changes Also, make sure to start the actual text at the margin. ========================================================= +* eventdev: Event based Rx adapter callback + + The mbuf pointer array in the event eth Rx adapter callback + has been replaced with an event array. Using + an event array allows the application to change attributes + of the events enqueued by the SW adapter. + + The callback can drop packets and populate + a callback argument with the number of dropped packets. + Add a Rx adapter stats field to keep track of the total + number of dropped packets. + +* cryptodev: New member in ``rte_cryptodev_config`` to allow applications to + disable features supported by the crypto device. Only the following features + would be allowed to be disabled this way, + + - ``RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO`` + - ``RTE_CRYPTODEV_FF_ASYMMETRIC_CRYPTO`` + - ``RTE_CRYPTODEV_FF_SECURITY`` + + Disabling unused features would facilitate efficient usage of HW/SW offload. + +* bbdev: New operations and parameters added to support new 5GNR operations. + The bbdev ABI is still kept experimental. + Shared Library Versions ----------------------- @@ -171,12 +341,12 @@ The libraries prepended with a plus sign were incremented in this version. librte_cfgfile.so.2 librte_cmdline.so.2 librte_compressdev.so.1 - librte_cryptodev.so.7 + + librte_cryptodev.so.8 librte_distributor.so.1 - librte_eal.so.10 + + librte_eal.so.11 librte_efd.so.1 librte_ethdev.so.12 - librte_eventdev.so.6 + + librte_eventdev.so.7 librte_flow_classify.so.1 librte_gro.so.1 librte_gso.so.1