ethdev: add protocol based meter input color selection
[dpdk.git] / doc / guides / rel_notes / release_22_07.rst
1 .. SPDX-License-Identifier: BSD-3-Clause
2    Copyright 2022 The DPDK contributors
3
4 .. include:: <isonum.txt>
5
6 DPDK Release 22.07
7 ==================
8
9 .. **Read this first.**
10
11    The text in the sections below explains how to update the release notes.
12
13    Use proper spelling, capitalization and punctuation in all sections.
14
15    Variable and config names should be quoted as fixed width text:
16    ``LIKE_THIS``.
17
18    Build the docs and view the output file to ensure the changes are correct::
19
20       ninja -C build doc
21       xdg-open build/doc/guides/html/rel_notes/release_22_07.html
22
23
24 New Features
25 ------------
26
27 .. This section should contain new features added in this release.
28    Sample format:
29
30    * **Add a title in the past tense with a full stop.**
31
32      Add a short 1-2 sentence description in the past tense.
33      The description should be enough to allow someone scanning
34      the release notes to understand the new feature.
35
36      If the feature adds a lot of sub-features you can use a bullet list
37      like this:
38
39      * Added feature foo to do something.
40      * Enhanced feature bar to do something else.
41
42      Refer to the previous release notes for examples.
43
44      Suggested order in release notes items:
45      * Core libs (EAL, mempool, ring, mbuf, buses)
46      * Device abstraction libs and PMDs (ordered alphabetically by vendor name)
47        - ethdev (lib, PMDs)
48        - cryptodev (lib, PMDs)
49        - eventdev (lib, PMDs)
50        - etc
51      * Other libs
52      * Apps, Examples, Tools (if significant)
53
54      This section is a comment. Do not overwrite or remove it.
55      Also, make sure to start the actual text at the margin.
56      =======================================================
57
58 * **Added protocol based input color selection for meter.**
59
60   Added new functions ``rte_mtr_color_in_protocol_set()``,
61   ``rte_mtr_color_in_protocol_get()``,
62   ``rte_mtr_color_in_protocol_priority_get()``,
63   ``rte_mtr_meter_vlan_table_update()``
64   and updated ``struct rte_mtr_params`` and ``struct rte_mtr_capabilities`` to
65   support protocol based input color selection for meter.
66
67 * **Added vhost API to get the number of in-flight packets.**
68
69   Added an API which can get the number of in-flight packets in
70   vhost async data path without using lock.
71
72 * **Updated Intel iavf driver.**
73
74   * Added Tx QoS queue rate limitation support.
75   * Added quanta size configuration support.
76   * Added ``DEV_RX_OFFLOAD_TIMESTAMP`` support.
77
78 * **Updated Intel ice driver.**
79
80  * Added support for RSS RETA configure in DCF mode.
81  * Added support for RSS HASH configure in DCF mode.
82  * Added support for MTU configure in DCF mode.
83  * Added support for promisc configuration in DCF mode.
84  * Added support for MAC configuration in DCF mode.
85  * Added support for VLAN filter and offload configuration in DCF mode.
86
87 * **Updated Mellanox mlx5 driver.**
88
89   * Added support for promiscuous mode on Windows.
90   * Added support for MTU on Windows.
91   * Added matching and RSS on IPsec ESP.
92
93 * **Added Elliptic Curve Diffie-Hellman (ECDH) algorithm in cryptodev.**
94
95   Added support for Elliptic Curve Diffie Hellman (ECDH) asymmetric
96   algorithm in cryptodev.
97
98 * **Updated Marvell cnxk crypto driver.**
99
100   * Added AH mode support in lookaside protocol (IPsec) for CN9K & CN10K.
101   * Added AES-GMAC support in lookaside protocol (IPsec) for CN9K & CN10K.
102
103 * **Updated Intel QuickAssist Technology (QAT) crypto PMD.**
104
105   * Added support for secp384r1 elliptic curve.
106
107 * **Added eventdev API to quiesce an event port.**
108
109   Added the function ``rte_event_port_quiesce()``
110   to quiesce any lcore-specific resources consumed by the event port,
111   when the lcore is no more associated with an event port.
112
113 * **Added support for setting queue attributes at runtime in eventdev.**
114
115   Added new API ``rte_event_queue_attr_set()``, to set event queue attributes
116   at runtime.
117
118 * **Added new queues attributes weight and affinity in eventdev.**
119
120   Defined new event queue attributes weight and affinity as below:
121
122   * ``RTE_EVENT_QUEUE_ATTR_WEIGHT``
123   * ``RTE_EVENT_QUEUE_ATTR_AFFINITY``
124
125 * **Added scalar version of the LPM library.**
126
127   Added scalar implementation of ``rte_lpm_lookupx4``.
128   This is a fall-back implementation for platforms that
129   don't support vector operations.
130
131
132 Removed Items
133 -------------
134
135 .. This section should contain removed items in this release. Sample format:
136
137    * Add a short 1-2 sentence description of the removed item
138      in the past tense.
139
140    This section is a comment. Do not overwrite or remove it.
141    Also, make sure to start the actual text at the margin.
142    =======================================================
143
144
145 API Changes
146 -----------
147
148 .. This section should contain API changes. Sample format:
149
150    * sample: Add a short 1-2 sentence description of the API change
151      which was announced in the previous releases and made in this release.
152      Start with a scope label like "ethdev:".
153      Use fixed width quotes for ``function_names`` or ``struct_names``.
154      Use the past tense.
155
156    This section is a comment. Do not overwrite or remove it.
157    Also, make sure to start the actual text at the margin.
158    =======================================================
159
160 * The DPDK header file ``rte_altivec.h``,
161   which is a wrapper for the PPC header file ``altivec.h``,
162   undefines the AltiVec keyword ``vector``.
163   The alternative keyword ``__vector`` should be used instead.
164
165 * Experimental structures ``struct rte_mtr_params``
166   and ``struct rte_mtr_capabilities`` updated to support
167   protocol based input color for meter.
168
169
170 ABI Changes
171 -----------
172
173 .. This section should contain ABI changes. Sample format:
174
175    * sample: Add a short 1-2 sentence description of the ABI change
176      which was announced in the previous releases and made in this release.
177      Start with a scope label like "ethdev:".
178      Use fixed width quotes for ``function_names`` or ``struct_names``.
179      Use the past tense.
180
181    This section is a comment. Do not overwrite or remove it.
182    Also, make sure to start the actual text at the margin.
183    =======================================================
184
185 * No ABI change that would break compatibility with 21.11.
186
187
188 Known Issues
189 ------------
190
191 .. This section should contain new known issues in this release. Sample format:
192
193    * **Add title in present tense with full stop.**
194
195      Add a short 1-2 sentence description of the known issue
196      in the present tense. Add information on any known workarounds.
197
198    This section is a comment. Do not overwrite or remove it.
199    Also, make sure to start the actual text at the margin.
200    =======================================================
201
202
203 Tested Platforms
204 ----------------
205
206 .. This section should contain a list of platforms that were tested
207    with this release.
208
209    The format is:
210
211    * <vendor> platform with <vendor> <type of devices> combinations
212
213      * List of CPU
214      * List of OS
215      * List of devices
216      * Other relevant details...
217
218    This section is a comment. Do not overwrite or remove it.
219    Also, make sure to start the actual text at the margin.
220    =======================================================