net/ixgbe: release port upon close
[dpdk.git] / doc / guides / rel_notes / release_19_11.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright 2019 The DPDK contributors
3
4 .. include:: <isonum.txt>
5
6 DPDK Release 19.11
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       make doc-guides-html
21
22       xdg-open build/doc/html/guides/rel_notes/release_19_11.html
23
24
25 New Features
26 ------------
27
28 .. This section should contain new features added in this release.
29    Sample format:
30
31    * **Add a title in the past tense with a full stop.**
32
33      Add a short 1-2 sentence description in the past tense.
34      The description should be enough to allow someone scanning
35      the release notes to understand the new feature.
36
37      If the feature adds a lot of sub-features you can use a bullet list
38      like this:
39
40      * Added feature foo to do something.
41      * Enhanced feature bar to do something else.
42
43      Refer to the previous release notes for examples.
44
45      Suggested order in release notes items:
46      * Core libs (EAL, mempool, ring, mbuf, buses)
47      * Device abstraction libs and PMDs
48        - ethdev (lib, PMDs)
49        - cryptodev (lib, PMDs)
50        - eventdev (lib, PMDs)
51        - etc
52      * Other libs
53      * Apps, Examples, Tools (if significant)
54
55      This section is a comment. Do not overwrite or remove it.
56      Also, make sure to start the actual text at the margin.
57      =========================================================
58
59 * **Added Hisilicon hns3 PMD.**
60
61   Added the new ``hns3`` net driver for the inbuilt Hisilicon Network
62   Subsystem 3(HNS3) network engine found in the Hisilicon Kunpeng 920 SoC.
63   See the :doc:`../nics/hns3` guide for more details on this new driver.
64
65 * **Updated the Intel e1000 driver.**
66
67   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
68
69 * **Updated the Intel ixgbe driver.**
70
71   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
72
73 * **Updated the Intel i40e driver.**
74
75   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
76
77 * **Updated the Intel fm10k driver.**
78
79   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
80
81 * **Updated the Intel ice driver.**
82
83   Updated the Intel ice driver with new features and improvements, including:
84
85   * Added support for device-specific DDP package loading.
86   * Added support for handling Receive Flex Descriptor.
87   * Added support for protocol extraction on per Rx queue.
88   * Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
89
90 * **Added Marvell NITROX symmetric crypto PMD.**
91
92   Added a symmetric crypto PMD for Marvell NITROX V security processor.
93   See the :doc:`../cryptodevs/nitrox` guide for more details on this new
94
95 * **Updated NXP crypto PMDs for PDCP support.**
96
97   PDCP support is added to DPAA_SEC and DPAA2_SEC PMDs using rte_security APIs.
98   Support is added for all sequence number sizes for control and user plane.
99   Test application is updated for unit testing.
100
101 * **Enabled Single Pass GCM acceleration on QAT GEN3.**
102
103   Added support for Single Pass GCM, available on QAT GEN3 only (Intel
104   QuickAssist Technology C4xxx). It is automatically chosen instead of the
105   classic 2-pass mode when running on QAT GEN3, significantly improving
106   the performance of AES GCM operations.
107
108 * **Updated the Intel QuickAssist Technology (QAT) compression PMD.**
109
110   Added stateful decompression support in the Intel QuickAssist Technology PMD.
111   Please note that stateful compression is not supported.
112
113
114 Removed Items
115 -------------
116
117 .. This section should contain removed items in this release. Sample format:
118
119    * Add a short 1-2 sentence description of the removed item
120      in the past tense.
121
122    This section is a comment. Do not overwrite or remove it.
123    Also, make sure to start the actual text at the margin.
124    =========================================================
125
126    * Removed duplicated set of commands for RX offloading configuration from app/testpmd:
127      “port config all crc-strip|scatter|rx-cksum|rx-timestamp|hw-vlan|hw-vlan-filter|
128      hw-vlan-strip|hw-vlan-extend on|off”.
129
130      The testpmd commands set that can be used instead in order to enable or disable Rx
131      offloading on all Rx queues of a port is:
132      "port config <port_id> rx_offload crc_strip|scatter|ipv4_cksum|udp_cksum|tcp_cksum|
133      timestamp|vlan_strip|vlan_filter|vlan_extend on|off"
134
135
136 API Changes
137 -----------
138
139 .. This section should contain API changes. Sample format:
140
141    * sample: Add a short 1-2 sentence description of the API change
142      which was announced in the previous releases and made in this release.
143      Start with a scope label like "ethdev:".
144      Use fixed width quotes for ``function_names`` or ``struct_names``.
145      Use the past tense.
146
147    This section is a comment. Do not overwrite or remove it.
148    Also, make sure to start the actual text at the margin.
149    =========================================================
150
151 * ethdev: changed ``rte_eth_dev_infos_get`` return value from ``void`` to
152   ``int`` to provide a way to report various error conditions.
153
154 * ethdev: changed ``rte_eth_promiscuous_enable`` and
155   ``rte_eth_promiscuous_disable`` return value from ``void`` to ``int`` to
156   provide a way to report various error conditions.
157
158 * ethdev: changed ``rte_eth_allmulticast_enable`` and
159   ``rte_eth_allmulticast_disable`` return value from ``void`` to ``int`` to
160   provide a way to report various error conditions.
161
162 * ethdev: changed ``rte_eth_dev_xstats_reset`` return value from ``void`` to
163   ``int`` to provide a way to report various error conditions.
164
165 * ethdev: changed ``rte_eth_link_get`` and ``rte_eth_link_get_nowait``
166   return value from ``void`` to ``int`` to provide a way to report various
167   error conditions.
168
169 * ethdev: changed ``rte_eth_macaddr_get`` return value from ``void`` to
170   ``int`` to provide a way to report various error conditions.
171
172 * ethdev: changed ``rte_eth_dev_owner_delete`` return value from ``void`` to
173   ``int`` to provide a way to report various error conditions.
174
175
176 ABI Changes
177 -----------
178
179 .. This section should contain ABI changes. Sample format:
180
181    * sample: Add a short 1-2 sentence description of the ABI change
182      which was announced in the previous releases and made in this release.
183      Start with a scope label like "ethdev:".
184      Use fixed width quotes for ``function_names`` or ``struct_names``.
185      Use the past tense.
186
187    This section is a comment. Do not overwrite or remove it.
188    Also, make sure to start the actual text at the margin.
189    =========================================================
190
191
192 Shared Library Versions
193 -----------------------
194
195 .. Update any library version updated in this release
196    and prepend with a ``+`` sign, like this:
197
198      libfoo.so.1
199    + libupdated.so.2
200      libbar.so.1
201
202    This section is a comment. Do not overwrite or remove it.
203    =========================================================
204
205 The libraries prepended with a plus sign were incremented in this version.
206
207 .. code-block:: diff
208
209      librte_acl.so.2
210      librte_bbdev.so.1
211      librte_bitratestats.so.2
212      librte_bpf.so.1
213      librte_bus_dpaa.so.2
214      librte_bus_fslmc.so.2
215      librte_bus_ifpga.so.2
216      librte_bus_pci.so.2
217      librte_bus_vdev.so.2
218      librte_bus_vmbus.so.2
219      librte_cfgfile.so.2
220      librte_cmdline.so.2
221      librte_compressdev.so.1
222      librte_cryptodev.so.8
223      librte_distributor.so.1
224      librte_eal.so.11
225      librte_efd.so.1
226    + librte_ethdev.so.13
227      librte_eventdev.so.7
228      librte_flow_classify.so.1
229      librte_gro.so.1
230      librte_gso.so.1
231      librte_hash.so.2
232      librte_ip_frag.so.1
233      librte_ipsec.so.1
234      librte_jobstats.so.1
235      librte_kni.so.2
236      librte_kvargs.so.1
237      librte_latencystats.so.1
238      librte_lpm.so.2
239      librte_mbuf.so.5
240      librte_member.so.1
241      librte_mempool.so.5
242      librte_meter.so.3
243      librte_metrics.so.1
244      librte_net.so.1
245      librte_pci.so.1
246      librte_pdump.so.3
247      librte_pipeline.so.3
248      librte_pmd_bnxt.so.2
249      librte_pmd_bond.so.2
250      librte_pmd_i40e.so.2
251      librte_pmd_ixgbe.so.2
252      librte_pmd_dpaa2_qdma.so.1
253      librte_pmd_ring.so.2
254      librte_pmd_softnic.so.1
255      librte_pmd_vhost.so.2
256      librte_port.so.3
257      librte_power.so.1
258      librte_rawdev.so.1
259      librte_rcu.so.1
260      librte_reorder.so.1
261      librte_ring.so.2
262      librte_sched.so.3
263      librte_security.so.2
264      librte_stack.so.1
265      librte_table.so.3
266      librte_timer.so.1
267      librte_vhost.so.4
268
269
270 Known Issues
271 ------------
272
273 .. This section should contain new known issues in this release. Sample format:
274
275    * **Add title in present tense with full stop.**
276
277      Add a short 1-2 sentence description of the known issue
278      in the present tense. Add information on any known workarounds.
279
280    This section is a comment. Do not overwrite or remove it.
281    Also, make sure to start the actual text at the margin.
282    =========================================================
283
284
285 Tested Platforms
286 ----------------
287
288 .. This section should contain a list of platforms that were tested
289    with this release.
290
291    The format is:
292
293    * <vendor> platform with <vendor> <type of devices> combinations
294
295      * List of CPU
296      * List of OS
297      * List of devices
298      * Other relevant details...
299
300    This section is a comment. Do not overwrite or remove it.
301    Also, make sure to start the actual text at the margin.
302    =========================================================
303
304 * **Updated Mellanox mlx5 driver.**
305
306   Updated Mellanox mlx5 driver with new features and improvements, including:
307
308   * Added support for VLAN pop flow offload command.
309   * Added support for VLAN push flow offload command.
310   * Added support for VLAN set PCP offload command.
311   * Added support for VLAN set VID offload command.
312