1.. SPDX-License-Identifier: BSD-3-Clause 2 Copyright 2019 The DPDK contributors 3 4DPDK Release 19.05 5================== 6 7.. **Read this first.** 8 9 The text in the sections below explains how to update the release notes. 10 11 Use proper spelling, capitalization and punctuation in all sections. 12 13 Variable and config names should be quoted as fixed width text: 14 ``LIKE_THIS``. 15 16 Build the docs and view the output file to ensure the changes are correct:: 17 18 make doc-guides-html 19 20 xdg-open build/doc/html/guides/rel_notes/release_19_05.html 21 22 23New Features 24------------ 25 26.. This section should contain new features added in this release. 27 Sample format: 28 29 * **Add a title in the past tense with a full stop.** 30 31 Add a short 1-2 sentence description in the past tense. 32 The description should be enough to allow someone scanning 33 the release notes to understand the new feature. 34 35 If the feature adds a lot of sub-features you can use a bullet list 36 like this: 37 38 * Added feature foo to do something. 39 * Enhanced feature bar to do something else. 40 41 Refer to the previous release notes for examples. 42 43 Suggested order in release notes items: 44 * Core libs (EAL, mempool, ring, mbuf, buses) 45 * Device abstraction libs and PMDs 46 - ethdev (lib, PMDs) 47 - cryptodev (lib, PMDs) 48 - eventdev (lib, PMDs) 49 - etc 50 * Other libs 51 * Apps, Examples, Tools (if significant) 52 53 This section is a comment. Do not overwrite or remove it. 54 Also, make sure to start the actual text at the margin. 55 ========================================================= 56 57* **Updated KNI module and PMD.** 58 59 Updated the KNI kernel module to set the max_mtu according to the given 60 initial MTU size. Without it, the maximum MTU was 1500. 61 62 Updated the KNI PMD driver to set the mbuf_size and MTU based on 63 the given mb-pool. This provide the ability to pass jumbo frames 64 if the mb-pool contains suitable buffers' size. 65 66* **Updated Solarflare network PMD.** 67 68 Updated the sfc_efx driver including the following changes: 69 70 * Added support for Rx descriptor status and related API in a secondary 71 process. 72 * Added support for Tx descriptor status API in a secondary process. 73 * Added support for RSS RETA and hash configuration get API in a secondary 74 process. 75 * Added support for Rx packet types list in a secondary process. 76 77* **Updated Mellanox drivers.** 78 79 New features and improvements were done in mlx4 and mlx5 PMDs: 80 81 * Added firmware version reading. 82 83* **Renamed avf to iavf.** 84 85 Renamed Intel Ethernet Adaptive Virtual Function driver ``avf`` to ``iavf``, 86 which includes the directory name, lib name, filenames, makefile, docs, 87 macros, functions, structs and any other strings in the code. 88 89* **Updated the enic driver.** 90 91 * Fixed several flow (director) bugs related to MARK, SCTP, VLAN, VXLAN, and 92 inner packet matching. 93 * Added limited support for RAW. 94 * Added limited support for RSS. 95 * Added limited support for PASSTHRU. 96 97* **Updated the ixgbe driver.** 98 99 New features for VF: 100 101 * Added promiscuous mode support. 102 103* **Updated the ice driver.** 104 105 * Added support of SSE and AVX2 instructions in Rx and Tx paths. 106 * Added package download support. 107 * Added Safe Mode support. 108 * Supported RSS for UPD/TCP/SCTP+IPV4/IPV6 packets. 109 110* **Updated the QuickAssist Technology PMD.** 111 112 Added support for AES-XTS with 128 and 256 bit AES keys. 113 114* **Updated AESNI-MB PMD.** 115 116 Added support for out-of-place operations. 117 118* **Updated the IPsec library.** 119 120 The IPsec library has been updated with AES-CTR and 3DES-CBC cipher algorithms 121 support. The related ipsec-secgw test scripts have been added. 122 123* **Updated the testpmd application.** 124 125 Improved testpmd application performance on ARM platform. For ``macswap`` 126 forwarding mode, NEON intrinsics were used to do swap to save CPU cycles. 127 128 129Removed Items 130------------- 131 132.. This section should contain removed items in this release. Sample format: 133 134 * Add a short 1-2 sentence description of the removed item 135 in the past tense. 136 137 This section is a comment. Do not overwrite or remove it. 138 Also, make sure to start the actual text at the margin. 139 ========================================================= 140 141 142API Changes 143----------- 144 145.. This section should contain API changes. Sample format: 146 147 * sample: Add a short 1-2 sentence description of the API change 148 which was announced in the previous releases and made in this release. 149 Start with a scope label like "ethdev:". 150 Use fixed width quotes for ``function_names`` or ``struct_names``. 151 Use the past tense. 152 153 This section is a comment. Do not overwrite or remove it. 154 Also, make sure to start the actual text at the margin. 155 ========================================================= 156 157* eal: the type of the ``attr_value`` parameter of the function 158 ``rte_service_attr_get()`` has been changed 159 from ``uint32_t *`` to ``uint64_t *``. 160 161* vfio: Functions ``rte_vfio_container_dma_map`` and 162 ``rte_vfio_container_dma_unmap`` have been extended with an option to 163 request mapping or un-mapping to the default vfio container fd. 164 165 166ABI Changes 167----------- 168 169.. This section should contain ABI changes. Sample format: 170 171 * sample: Add a short 1-2 sentence description of the ABI change 172 which was announced in the previous releases and made in this release. 173 Start with a scope label like "ethdev:". 174 Use fixed width quotes for ``function_names`` or ``struct_names``. 175 Use the past tense. 176 177 This section is a comment. Do not overwrite or remove it. 178 Also, make sure to start the actual text at the margin. 179 ========================================================= 180 181* ethdev: Additional fields in rte_eth_dev_info. 182 183 The ``rte_eth_dev_info`` structure has had two extra fields 184 added: ``min_mtu`` and ``max_mtu``. Each of these are of type ``uint16_t``. 185 The values of these fields can be set specifically by the PMD drivers as 186 supported values can vary from device to device. 187 188* cryptodev: in 18.08 new structure ``rte_crypto_asym_op`` was introduced and 189 included into ``rte_crypto_op``. As ``rte_crypto_asym_op`` structure was 190 defined as cache-line aligned that caused unintended changes in 191 ``rte_crypto_op`` structure layout and alignment. Remove cache-line 192 alignment for ``rte_crypto_asym_op`` to restore expected ``rte_crypto_op`` 193 layout and alignment. 194 195 196Shared Library Versions 197----------------------- 198 199.. Update any library version updated in this release 200 and prepend with a ``+`` sign, like this: 201 202 libfoo.so.1 203 + libupdated.so.2 204 libbar.so.1 205 206 This section is a comment. Do not overwrite or remove it. 207 ========================================================= 208 209The libraries prepended with a plus sign were incremented in this version. 210 211.. code-block:: diff 212 213 librte_acl.so.2 214 librte_bbdev.so.1 215 librte_bitratestats.so.2 216 librte_bpf.so.1 217 librte_bus_dpaa.so.2 218 librte_bus_fslmc.so.2 219 librte_bus_ifpga.so.2 220 librte_bus_pci.so.2 221 librte_bus_vdev.so.2 222 librte_bus_vmbus.so.2 223 librte_cfgfile.so.2 224 librte_cmdline.so.2 225 librte_compressdev.so.1 226 + librte_cryptodev.so.7 227 librte_distributor.so.1 228 + librte_eal.so.10 229 librte_efd.so.1 230 + librte_ethdev.so.12 231 librte_eventdev.so.6 232 librte_flow_classify.so.1 233 librte_gro.so.1 234 librte_gso.so.1 235 librte_hash.so.2 236 librte_ip_frag.so.1 237 librte_jobstats.so.1 238 librte_kni.so.2 239 librte_kvargs.so.1 240 librte_latencystats.so.1 241 librte_lpm.so.2 242 librte_mbuf.so.5 243 librte_member.so.1 244 librte_mempool.so.5 245 librte_meter.so.2 246 librte_metrics.so.1 247 librte_net.so.1 248 librte_pci.so.1 249 librte_pdump.so.3 250 librte_pipeline.so.3 251 librte_pmd_bnxt.so.2 252 librte_pmd_bond.so.2 253 librte_pmd_i40e.so.2 254 librte_pmd_ixgbe.so.2 255 librte_pmd_dpaa2_qdma.so.1 256 librte_pmd_ring.so.2 257 librte_pmd_softnic.so.1 258 librte_pmd_vhost.so.2 259 librte_port.so.3 260 librte_power.so.1 261 librte_rawdev.so.1 262 librte_reorder.so.1 263 librte_ring.so.2 264 librte_sched.so.2 265 librte_security.so.2 266 librte_table.so.3 267 librte_timer.so.1 268 librte_vhost.so.4 269 270 271Known Issues 272------------ 273 274.. This section should contain new known issues in this release. Sample format: 275 276 * **Add title in present tense with full stop.** 277 278 Add a short 1-2 sentence description of the known issue 279 in the present tense. Add information on any known workarounds. 280 281 This section is a comment. Do not overwrite or remove it. 282 Also, make sure to start the actual text at the margin. 283 ========================================================= 284 285* **No software AES-XTS implementation.** 286 287 There are currently no cryptodev software PMDs available which implement 288 support for the AES-XTS algorithm, so this feature can only be used 289 if compatible hardware and an associated PMD is available. 290 291 292Tested Platforms 293---------------- 294 295.. This section should contain a list of platforms that were tested 296 with this release. 297 298 The format is: 299 300 * <vendor> platform with <vendor> <type of devices> combinations 301 302 * List of CPU 303 * List of OS 304 * List of devices 305 * Other relevant details... 306 307 This section is a comment. Do not overwrite or remove it. 308 Also, make sure to start the actual text at the margin. 309 ========================================================= 310