17b1934d0SDavid Marchand.. SPDX-License-Identifier: BSD-3-Clause 27b1934d0SDavid Marchand Copyright 2022 The DPDK contributors 37b1934d0SDavid Marchand 47b1934d0SDavid Marchand.. include:: <isonum.txt> 57b1934d0SDavid Marchand 67b1934d0SDavid MarchandDPDK Release 23.03 77b1934d0SDavid Marchand================== 87b1934d0SDavid Marchand 97b1934d0SDavid Marchand.. **Read this first.** 107b1934d0SDavid Marchand 117b1934d0SDavid Marchand The text in the sections below explains how to update the release notes. 127b1934d0SDavid Marchand 137b1934d0SDavid Marchand Use proper spelling, capitalization and punctuation in all sections. 147b1934d0SDavid Marchand 157b1934d0SDavid Marchand Variable and config names should be quoted as fixed width text: 167b1934d0SDavid Marchand ``LIKE_THIS``. 177b1934d0SDavid Marchand 187b1934d0SDavid Marchand Build the docs and view the output file to ensure the changes are correct:: 197b1934d0SDavid Marchand 207b1934d0SDavid Marchand ninja -C build doc 217b1934d0SDavid Marchand xdg-open build/doc/guides/html/rel_notes/release_23_03.html 227b1934d0SDavid Marchand 237b1934d0SDavid Marchand 247b1934d0SDavid MarchandNew Features 257b1934d0SDavid Marchand------------ 267b1934d0SDavid Marchand 277b1934d0SDavid Marchand.. This section should contain new features added in this release. 287b1934d0SDavid Marchand Sample format: 297b1934d0SDavid Marchand 307b1934d0SDavid Marchand * **Add a title in the past tense with a full stop.** 317b1934d0SDavid Marchand 327b1934d0SDavid Marchand Add a short 1-2 sentence description in the past tense. 337b1934d0SDavid Marchand The description should be enough to allow someone scanning 347b1934d0SDavid Marchand the release notes to understand the new feature. 357b1934d0SDavid Marchand 367b1934d0SDavid Marchand If the feature adds a lot of sub-features you can use a bullet list 377b1934d0SDavid Marchand like this: 387b1934d0SDavid Marchand 397b1934d0SDavid Marchand * Added feature foo to do something. 407b1934d0SDavid Marchand * Enhanced feature bar to do something else. 417b1934d0SDavid Marchand 427b1934d0SDavid Marchand Refer to the previous release notes for examples. 437b1934d0SDavid Marchand 447b1934d0SDavid Marchand Suggested order in release notes items: 457b1934d0SDavid Marchand * Core libs (EAL, mempool, ring, mbuf, buses) 467b1934d0SDavid Marchand * Device abstraction libs and PMDs (ordered alphabetically by vendor name) 477b1934d0SDavid Marchand - ethdev (lib, PMDs) 487b1934d0SDavid Marchand - cryptodev (lib, PMDs) 497b1934d0SDavid Marchand - eventdev (lib, PMDs) 507b1934d0SDavid Marchand - etc 517b1934d0SDavid Marchand * Other libs 527b1934d0SDavid Marchand * Apps, Examples, Tools (if significant) 537b1934d0SDavid Marchand 547b1934d0SDavid Marchand This section is a comment. Do not overwrite or remove it. 557b1934d0SDavid Marchand Also, make sure to start the actual text at the margin. 567b1934d0SDavid Marchand ======================================================= 577b1934d0SDavid Marchand 58657a98f3SDavid Marchand* **Introduced lock annotations.** 59657a98f3SDavid Marchand 60657a98f3SDavid Marchand Added lock annotations attributes so that clang can statically analyze lock 61657a98f3SDavid Marchand correctness. 62657a98f3SDavid Marchand 639ab18049SRobin Jarry* **Added support for reporting lcore usage in applications.** 649ab18049SRobin Jarry 6539d469a7SRobin Jarry * The ``/eal/lcore/list``, ``/eal/lcore/usage`` and ``/eal/lcore/info`` 6639d469a7SRobin Jarry telemetry endpoints have been added to provide information similar to 6739d469a7SRobin Jarry ``rte_lcore_dump()``. 689ab18049SRobin Jarry * Applications can register a callback at startup via 699ab18049SRobin Jarry ``rte_lcore_register_usage_cb()`` to provide lcore usage information. 709ab18049SRobin Jarry 71be944d46SRongwei Liu* **Added flow matching of IPv6 routing extension.** 72be944d46SRongwei Liu 73be944d46SRongwei Liu Added ``RTE_FLOW_ITEM_TYPE_IPV6_ROUTING_EXT`` 74be944d46SRongwei Liu to match IPv6 routing extension header fields. 75be944d46SRongwei Liu 76750ee81dSLeo Xu* **Added flow matching of ICMPv6.** 77750ee81dSLeo Xu 78750ee81dSLeo Xu Added flow items to match ICMPv6 echo request and reply packets. 79750ee81dSLeo Xu Matching patterns can include ICMP identifier and sequence numbers. 80750ee81dSLeo Xu 81c8e25fbfSRongwei Liu* **Added flow flex handle to modify action.** 82c8e25fbfSRongwei Liu 83c8e25fbfSRongwei Liu Added flex modify item ``RTE_FLOW_FIELD_FLEX_ITEM``. 84c8e25fbfSRongwei Liu 8560261a00SAlexander Kozyrev* **Added index-based rules insertion in flow API.** 8660261a00SAlexander Kozyrev 8760261a00SAlexander Kozyrev * Added ``rte_flow_table_insertion_type`` to allow the creation 8860261a00SAlexander Kozyrev of index-based template tables in addition to pattern-based tables. 8960261a00SAlexander Kozyrev * Introduced new function ``rte_flow_async_create_by_index()`` 9060261a00SAlexander Kozyrev to insert rules by index into index-based template tables. 91d6376b38SAlexander Kozyrev * Added hash calculation function used in template tables 92d6376b38SAlexander Kozyrev to allow control over the calculation of the rule index for a packet. 9360261a00SAlexander Kozyrev 94f5b2846dSViacheslav Ovsiienko* **Added cross-port indirect action in asynchronous flow API.** 95f5b2846dSViacheslav Ovsiienko 96f5b2846dSViacheslav Ovsiienko * Allowed to share indirect actions between ports by passing 97f5b2846dSViacheslav Ovsiienko the flag ``RTE_FLOW_PORT_FLAG_SHARE_INDIRECT`` to ``rte_flow_configure()``. 98f5b2846dSViacheslav Ovsiienko * Added ``host_port_id`` in ``rte_flow_port_attr`` structure 99f5b2846dSViacheslav Ovsiienko to reference the port hosting the shared objects. 100f5b2846dSViacheslav Ovsiienko 101044c47b4SGregory Etelson* **Added atomic query and update indirect flow action.** 102044c47b4SGregory Etelson 103044c47b4SGregory Etelson Added synchronous and asynchronous functions to atomically query and update 104044c47b4SGregory Etelson indirect flow action: 105044c47b4SGregory Etelson 106044c47b4SGregory Etelson * ``rte_flow_action_handle_query_update()`` 107044c47b4SGregory Etelson * ``rte_flow_async_action_handle_query_update()`` 108044c47b4SGregory Etelson 1093e3edab5SGregory Etelson* **Added flow quota action and item.** 1103e3edab5SGregory Etelson 1113e3edab5SGregory Etelson * ``RTE_FLOW_ACTION_TYPE_QUOTA`` 1123e3edab5SGregory Etelson * ``RTE_FLOW_ITEM_TYPE_QUOTA`` 1133e3edab5SGregory Etelson 1146807e8b5SRakesh Kudurumalla* **Added flow API to skip congestion management configuration.** 1156807e8b5SRakesh Kudurumalla 1166807e8b5SRakesh Kudurumalla * Added the action ``RTE_FLOW_ACTION_TYPE_SKIP_CMAN`` to skip 1176807e8b5SRakesh Kudurumalla congestion management processing 1186807e8b5SRakesh Kudurumalla based on per flow or packet color identified by a flow meter object. 1196807e8b5SRakesh Kudurumalla 1209963b513SJesna K E* **Updated AMD axgbe driver.** 1219963b513SJesna K E 1229963b513SJesna K E * Added multi-process support. 1239963b513SJesna K E 124cdfaa85eSShepard Siegel* **Updated Atomic Rules ark driver.** 125cdfaa85eSShepard Siegel 126cdfaa85eSShepard Siegel * Added Arkville FX2 device supporting PCIe Gen5x16. 127cdfaa85eSShepard Siegel 128e411f4e5SJin Liu* **Updated Corigine nfp driver.** 129e411f4e5SJin Liu 130e411f4e5SJin Liu * Added support for meter options. 1314ed0c858SJin Liu * Added support for rte_flow meter action. 132e411f4e5SJin Liu 1334f6fbbf6SSimei Su* **Updated Intel igc driver.** 1344f6fbbf6SSimei Su 1354f6fbbf6SSimei Su * Added support for timesync API. 1369630f7c7SSimei Su * Added support for packet pacing (launch time offloading). 1374f6fbbf6SSimei Su 138*53853f02SRakesh Kudurumalla* **Updated Marvell cnxk ethdev driver.** 139*53853f02SRakesh Kudurumalla 140*53853f02SRakesh Kudurumalla * Added support to skip RED using ``RTE_FLOW_ACTION_TYPE_SKIP_CMAN``. 141*53853f02SRakesh Kudurumalla 14201314192SLeo Xu* **Updated NVIDIA mlx5 driver.** 14301314192SLeo Xu 14401314192SLeo Xu * Added support for matching on ICMPv6 ID and sequence fields. 14501314192SLeo Xu 146f3ff9f28SJiawen Wu* **Updated Wangxun ngbe driver.** 147f3ff9f28SJiawen Wu 148f3ff9f28SJiawen Wu * Added chip overheat detection support. 149f3ff9f28SJiawen Wu 150dff8eca2SJiawen Wu* **Updated Wangxun txgbe driver.** 151dff8eca2SJiawen Wu 152dff8eca2SJiawen Wu * Added chip overheat detection support. 153d3bb4a04SJiawen Wu * Added SFP hot-plug identification support. 154dff8eca2SJiawen Wu 15556ee8af9SVolodymyr Fialko* **Added new algorithms to cryptodev.** 15656ee8af9SVolodymyr Fialko 15756ee8af9SVolodymyr Fialko Added SHAKE-128 and SHAKE-256 symmetric secure hash algorithm. 15856ee8af9SVolodymyr Fialko 159db1813ddSVolodymyr Fialko* **Updated Marvell cnxk crypto driver.** 160db1813ddSVolodymyr Fialko 161db1813ddSVolodymyr Fialko Added support for SHAKE hash algorithm in cn9k and cn10k. 162db1813ddSVolodymyr Fialko 1633a80d7fbSCiara Power* **Updated Intel QuickAssist Technology (QAT) crypto driver.** 1643a80d7fbSCiara Power 1653a80d7fbSCiara Power * Added support for SHA3 224/256/384/512 plain hash in QAT GEN 3. 1663a80d7fbSCiara Power * Added support for SHA3 256 plain hash in QAT GEN 2. 167ccb247b1SCiara Power * Added support for asymmetric crypto in QAT GEN3. 1683a80d7fbSCiara Power 1693372c4a6SMichael Baum* **Added LZ4 algorithm in compressdev library.** 1703372c4a6SMichael Baum 1713372c4a6SMichael Baum Added LZ4 compression algorithm with xxHash-32 for the checksum. 1723372c4a6SMichael Baum 17329bd868cSNaga Harish K S V* **Updated the eventdev reconfigure logic for service based adapters.** 17429bd868cSNaga Harish K S V 17529bd868cSNaga Harish K S V * eventdev reconfig logic is enhanced to increment the 17629bd868cSNaga Harish K S V ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter 17729bd868cSNaga Harish K S V if event port config is of type ``RTE_EVENT_PORT_CFG_SINGLE_LINK``. 17829bd868cSNaga Harish K S V * With this change, the application no longer needs to account for the 17929bd868cSNaga Harish K S V ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter 180850ae162SNaga Harish K S V required for eth_rx, eth_tx, crypto and timer eventdev adapters. 18129bd868cSNaga Harish K S V 1829b72ea1fSAmit Prakash Shukla* **Added pcap trace support in graph library.** 1839b72ea1fSAmit Prakash Shukla 1849b72ea1fSAmit Prakash Shukla * Added support to capture packets at each graph node with packet metadata and 1859b72ea1fSAmit Prakash Shukla node name. 1869b72ea1fSAmit Prakash Shukla 1877b1934d0SDavid Marchand 1887b1934d0SDavid MarchandRemoved Items 1897b1934d0SDavid Marchand------------- 1907b1934d0SDavid Marchand 1917b1934d0SDavid Marchand.. This section should contain removed items in this release. Sample format: 1927b1934d0SDavid Marchand 1937b1934d0SDavid Marchand * Add a short 1-2 sentence description of the removed item 1947b1934d0SDavid Marchand in the past tense. 1957b1934d0SDavid Marchand 1967b1934d0SDavid Marchand This section is a comment. Do not overwrite or remove it. 1977b1934d0SDavid Marchand Also, make sure to start the actual text at the margin. 1987b1934d0SDavid Marchand ======================================================= 1997b1934d0SDavid Marchand 2007b1934d0SDavid Marchand 2017b1934d0SDavid MarchandAPI Changes 2027b1934d0SDavid Marchand----------- 2037b1934d0SDavid Marchand 2047b1934d0SDavid Marchand.. This section should contain API changes. Sample format: 2057b1934d0SDavid Marchand 2067b1934d0SDavid Marchand * sample: Add a short 1-2 sentence description of the API change 2077b1934d0SDavid Marchand which was announced in the previous releases and made in this release. 2087b1934d0SDavid Marchand Start with a scope label like "ethdev:". 2097b1934d0SDavid Marchand Use fixed width quotes for ``function_names`` or ``struct_names``. 2107b1934d0SDavid Marchand Use the past tense. 2117b1934d0SDavid Marchand 2127b1934d0SDavid Marchand This section is a comment. Do not overwrite or remove it. 2137b1934d0SDavid Marchand Also, make sure to start the actual text at the margin. 2147b1934d0SDavid Marchand ======================================================= 2157b1934d0SDavid Marchand 216c1abd1e9SAmit Prakash Shukla* The experimental function ``rte_pcapng_copy`` was updated to support comment 217c1abd1e9SAmit Prakash Shukla section in enhanced packet block in the pcapng library. 218c1abd1e9SAmit Prakash Shukla 2199b72ea1fSAmit Prakash Shukla* The experimental structures ``struct rte_graph_param``, ``struct rte_graph`` 2209b72ea1fSAmit Prakash Shukla and ``struct graph`` were updated to support pcap trace in the graph library. 2219b72ea1fSAmit Prakash Shukla 2227b1934d0SDavid Marchand 2237b1934d0SDavid MarchandABI Changes 2247b1934d0SDavid Marchand----------- 2257b1934d0SDavid Marchand 2267b1934d0SDavid Marchand.. This section should contain ABI changes. Sample format: 2277b1934d0SDavid Marchand 2287b1934d0SDavid Marchand * sample: Add a short 1-2 sentence description of the ABI change 2297b1934d0SDavid Marchand which was announced in the previous releases and made in this release. 2307b1934d0SDavid Marchand Start with a scope label like "ethdev:". 2317b1934d0SDavid Marchand Use fixed width quotes for ``function_names`` or ``struct_names``. 2327b1934d0SDavid Marchand Use the past tense. 2337b1934d0SDavid Marchand 2347b1934d0SDavid Marchand This section is a comment. Do not overwrite or remove it. 2357b1934d0SDavid Marchand Also, make sure to start the actual text at the margin. 2367b1934d0SDavid Marchand ======================================================= 2377b1934d0SDavid Marchand 2387b1934d0SDavid Marchand* No ABI change that would break compatibility with 22.11. 2397b1934d0SDavid Marchand 2407b1934d0SDavid Marchand 2417b1934d0SDavid MarchandKnown Issues 2427b1934d0SDavid Marchand------------ 2437b1934d0SDavid Marchand 2447b1934d0SDavid Marchand.. This section should contain new known issues in this release. Sample format: 2457b1934d0SDavid Marchand 2467b1934d0SDavid Marchand * **Add title in present tense with full stop.** 2477b1934d0SDavid Marchand 2487b1934d0SDavid Marchand Add a short 1-2 sentence description of the known issue 2497b1934d0SDavid Marchand in the present tense. Add information on any known workarounds. 2507b1934d0SDavid Marchand 2517b1934d0SDavid Marchand This section is a comment. Do not overwrite or remove it. 2527b1934d0SDavid Marchand Also, make sure to start the actual text at the margin. 2537b1934d0SDavid Marchand ======================================================= 2547b1934d0SDavid Marchand 2557b1934d0SDavid Marchand 2567b1934d0SDavid MarchandTested Platforms 2577b1934d0SDavid Marchand---------------- 2587b1934d0SDavid Marchand 2597b1934d0SDavid Marchand.. This section should contain a list of platforms that were tested 2607b1934d0SDavid Marchand with this release. 2617b1934d0SDavid Marchand 2627b1934d0SDavid Marchand The format is: 2637b1934d0SDavid Marchand 2647b1934d0SDavid Marchand * <vendor> platform with <vendor> <type of devices> combinations 2657b1934d0SDavid Marchand 2667b1934d0SDavid Marchand * List of CPU 2677b1934d0SDavid Marchand * List of OS 2687b1934d0SDavid Marchand * List of devices 2697b1934d0SDavid Marchand * Other relevant details... 2707b1934d0SDavid Marchand 2717b1934d0SDavid Marchand This section is a comment. Do not overwrite or remove it. 2727b1934d0SDavid Marchand Also, make sure to start the actual text at the margin. 2737b1934d0SDavid Marchand ======================================================= 274