xref: /dpdk/doc/guides/rel_notes/release_23_03.rst (revision 53853f02f59e76e8f8c2022f53e8e119a8b8bed0)
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