examples/vhost: support async dequeue data path
[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 telemetry for module EEPROM.**
68
69   Added telemetry command to dump module EEPROM.
70   Added support for module EEPROM information format defined in:
71
72     * SFF-8079 revision 1.7
73     * SFF-8472 revision 12.0
74     * SFF-8636 revision 2.7
75
76 * **Added vhost API to get the number of in-flight packets.**
77
78   Added an API which can get the number of in-flight packets in
79   vhost async data path without using lock.
80
81 * **Added vhost async dequeue API to receive packets from guest.**
82
83   Added vhost async dequeue API which can leverage DMA devices to
84   accelerate receiving packets from guest.
85
86 * **Updated Intel iavf driver.**
87
88   * Added Tx QoS queue rate limitation support.
89   * Added quanta size configuration support.
90   * Added ``DEV_RX_OFFLOAD_TIMESTAMP`` support.
91
92 * **Updated Intel ice driver.**
93
94  * Added support for RSS RETA configure in DCF mode.
95  * Added support for RSS HASH configure in DCF mode.
96  * Added support for MTU configure in DCF mode.
97  * Added support for promisc configuration in DCF mode.
98  * Added support for MAC configuration in DCF mode.
99  * Added support for VLAN filter and offload configuration in DCF mode.
100
101 * **Updated Mellanox mlx5 driver.**
102
103   * Added support for promiscuous mode on Windows.
104   * Added support for MTU on Windows.
105   * Added matching and RSS on IPsec ESP.
106
107 * **Updated VMware vmxnet3 networking driver.**
108
109   * Added version 5 support.
110   * Added RETA query and RETA update support.
111   * Added version 6 support with some new features:
112
113     * Increased maximum MTU up to 9190;
114     * Increased maximum number of Rx and Tx queues;
115     * Removed power-of-two limitations on Rx and Tx queue size;
116     * Extended interrupt structures (required for additional queues).
117
118 * **Updated Wangxun ngbe driver.**
119
120   * Added support for yt8531s PHY.
121
122 * **Added Elliptic Curve Diffie-Hellman (ECDH) algorithm in cryptodev.**
123
124   Added support for Elliptic Curve Diffie Hellman (ECDH) asymmetric
125   algorithm in cryptodev.
126
127 * **Updated Marvell cnxk crypto driver.**
128
129   * Added AH mode support in lookaside protocol (IPsec) for CN9K & CN10K.
130   * Added AES-GMAC support in lookaside protocol (IPsec) for CN9K & CN10K.
131
132 * **Updated Intel QuickAssist Technology (QAT) crypto PMD.**
133
134   * Added support for secp384r1 elliptic curve.
135
136 * **Added eventdev API to quiesce an event port.**
137
138   Added the function ``rte_event_port_quiesce()``
139   to quiesce any lcore-specific resources consumed by the event port,
140   when the lcore is no more associated with an event port.
141
142 * **Added support for setting queue attributes at runtime in eventdev.**
143
144   Added new API ``rte_event_queue_attr_set()``, to set event queue attributes
145   at runtime.
146
147 * **Added new queues attributes weight and affinity in eventdev.**
148
149   Defined new event queue attributes weight and affinity as below:
150
151   * ``RTE_EVENT_QUEUE_ATTR_WEIGHT``
152   * ``RTE_EVENT_QUEUE_ATTR_AFFINITY``
153
154 * **Added scalar version of the LPM library.**
155
156   Added scalar implementation of ``rte_lpm_lookupx4``.
157   This is a fall-back implementation for platforms that
158   don't support vector operations.
159
160
161 Removed Items
162 -------------
163
164 .. This section should contain removed items in this release. Sample format:
165
166    * Add a short 1-2 sentence description of the removed item
167      in the past tense.
168
169    This section is a comment. Do not overwrite or remove it.
170    Also, make sure to start the actual text at the margin.
171    =======================================================
172
173
174 API Changes
175 -----------
176
177 .. This section should contain API changes. Sample format:
178
179    * sample: Add a short 1-2 sentence description of the API change
180      which was announced in the previous releases and made in this release.
181      Start with a scope label like "ethdev:".
182      Use fixed width quotes for ``function_names`` or ``struct_names``.
183      Use the past tense.
184
185    This section is a comment. Do not overwrite or remove it.
186    Also, make sure to start the actual text at the margin.
187    =======================================================
188
189 * The DPDK header file ``rte_altivec.h``,
190   which is a wrapper for the PPC header file ``altivec.h``,
191   undefines the AltiVec keyword ``vector``.
192   The alternative keyword ``__vector`` should be used instead.
193
194 * Experimental structures ``struct rte_mtr_params``
195   and ``struct rte_mtr_capabilities`` updated to support
196   protocol based input color for meter.
197
198
199 ABI Changes
200 -----------
201
202 .. This section should contain ABI changes. Sample format:
203
204    * sample: Add a short 1-2 sentence description of the ABI change
205      which was announced in the previous releases and made in this release.
206      Start with a scope label like "ethdev:".
207      Use fixed width quotes for ``function_names`` or ``struct_names``.
208      Use the past tense.
209
210    This section is a comment. Do not overwrite or remove it.
211    Also, make sure to start the actual text at the margin.
212    =======================================================
213
214 * No ABI change that would break compatibility with 21.11.
215
216
217 Known Issues
218 ------------
219
220 .. This section should contain new known issues in this release. Sample format:
221
222    * **Add title in present tense with full stop.**
223
224      Add a short 1-2 sentence description of the known issue
225      in the present tense. Add information on any known workarounds.
226
227    This section is a comment. Do not overwrite or remove it.
228    Also, make sure to start the actual text at the margin.
229    =======================================================
230
231
232 Tested Platforms
233 ----------------
234
235 .. This section should contain a list of platforms that were tested
236    with this release.
237
238    The format is:
239
240    * <vendor> platform with <vendor> <type of devices> combinations
241
242      * List of CPU
243      * List of OS
244      * List of devices
245      * Other relevant details...
246
247    This section is a comment. Do not overwrite or remove it.
248    Also, make sure to start the actual text at the margin.
249    =======================================================