51fc7075a4a488fc40b6bcd6b6f11fe8eaaf640a
[dpdk.git] / doc / guides / rel_notes / release_16_11.rst
1 DPDK Release 16.11
2 ==================
3
4 .. **Read this first.**
5
6    The text below explains how to update the release notes.
7
8    Use proper spelling, capitalization and punctuation in all sections.
9
10    Variable and config names should be quoted as fixed width text: ``LIKE_THIS``.
11
12    Build the docs and view the output file to ensure the changes are correct::
13
14       make doc-guides-html
15
16       firefox build/doc/html/guides/rel_notes/release_16_11.html
17
18
19 New Features
20 ------------
21
22 .. This section should contain new features added in this release. Sample format:
23
24    * **Add a title in the past tense with a full stop.**
25
26      Add a short 1-2 sentence description in the past tense. The description
27      should be enough to allow someone scanning the release notes to understand
28      the new feature.
29
30      If the feature adds a lot of sub-features you can use a bullet list like this.
31
32      * Added feature foo to do something.
33      * Enhanced feature bar to do something else.
34
35      Refer to the previous release notes for examples.
36
37      This section is a comment. Make sure to start the actual text at the margin.
38
39
40 * **Added software parser for packet type.**
41
42   * Added a new function ``rte_pktmbuf_read()`` to read the packet data from an
43     mbuf chain, linearizing if required.
44   * Added a new function ``rte_net_get_ptype()`` to parse an Ethernet packet
45     in an mbuf chain and retrieve its packet type by software.
46   * Added new functions ``rte_get_ptype_*()`` to dump a packet type as a string.
47
48 * **Added vhost-user indirect descriptors support.**
49
50   If indirect descriptor feature is negotiated, each packet sent by the guest
51   will take exactly one slot in the enqueue virtqueue. Without the feature, in
52   current version, even 64 bytes packets take two slots with Virtio PMD on guest
53   side.
54
55   The main impact is better performance for 0% packet loss use-cases, as it
56   behaves as if the virtqueue size was enlarged, so more packets can be buffered
57   in case of system perturbations. On the downside, small performance degradation
58   is measured when running micro-benchmarks.
59
60 * **Added vhost PMD xstats.**
61
62   Added extended statistics to vhost PMD from per port perspective.
63
64 * **Added virtio NEON support for ARM.**
65
66 * **Updated the ixgbe base driver.**
67
68   Updated the ixgbe base driver, including the following changes:
69
70   * add X550em_a 10G PHY support
71   * support flow control auto negotiation for X550em_a 1G PHY
72   * add X550em_a FW ALEF support
73   * increase mailbox version to ixgbe_mbox_api_13
74   * add two MAC ops for Hyper-V support
75
76 * **Updated the QAT PMD.**
77
78   The QAT PMD was updated with following support:
79
80   * MD5_HMAC algorithm
81   * SHA224-HMAC algorithm
82   * SHA384-HMAC algorithm
83   * GMAC algorithm
84   * KASUMI (F8 and F9) algorithm
85   * 3DES algorithm
86   * NULL algorithm
87   * C3XXX device
88   * C62XX device
89
90 * **Added libcrypto PMD.**
91
92   A new crypto PMD has been added, which provides several ciphering and hashing.
93   All cryptography operations are using Openssl library crypto API.
94
95 * **Updated the IPsec example with following support:**
96
97   * configuration file
98   * AES CBC IV generation with cipher forward function
99   * AES GCM/CTR mode
100
101 * **Added support for new gcc -march option.**
102
103   The GCC 4.9 ``-march`` option supports the Intel processor code names.
104   The config option ``RTE_MACHINE`` can be used to pass code names to the compiler as ``-march`` flag.
105
106
107 Resolved Issues
108 ---------------
109
110 .. This section should contain bug fixes added to the relevant sections. Sample format:
111
112    * **code/section Fixed issue in the past tense with a full stop.**
113
114      Add a short 1-2 sentence description of the resolved issue in the past tense.
115      The title should contain the code/lib section like a commit message.
116      Add the entries in alphabetic order in the relevant sections below.
117
118    This section is a comment. Make sure to start the actual text at the margin.
119
120
121 EAL
122 ~~~
123
124
125 Drivers
126 ~~~~~~~
127
128
129 Libraries
130 ~~~~~~~~~
131
132
133 Examples
134 ~~~~~~~~
135
136
137 Other
138 ~~~~~
139
140
141 Known Issues
142 ------------
143
144 .. This section should contain new known issues in this release. Sample format:
145
146    * **Add title in present tense with full stop.**
147
148      Add a short 1-2 sentence description of the known issue in the present
149      tense. Add information on any known workarounds.
150
151    This section is a comment. Make sure to start the actual text at the margin.
152
153
154 API Changes
155 -----------
156
157 .. This section should contain API changes. Sample format:
158
159    * Add a short 1-2 sentence description of the API change. Use fixed width
160      quotes for ``rte_function_names`` or ``rte_struct_names``. Use the past tense.
161
162    This section is a comment. Make sure to start the actual text at the margin.
163
164 * The driver names have been changed. It especially impacts ``--vdev`` arguments.
165   Examples: ``eth_pcap`` becomes ``net_pcap``
166   and ``cryptodev_aesni_mb_pmd`` becomes ``crypto_aesni_mb``.
167
168 * The log history is removed.
169
170 * The ``rte_ivshmem`` feature (including library and EAL code) has been removed
171   in 16.11 because it had some design issues which were not planned to be fixed.
172
173 * The ``file_name`` data type of ``struct rte_port_source_params`` and
174   ``struct rte_port_sink_params`` is changed from `char *`` to ``const char *``.
175
176
177 ABI Changes
178 -----------
179
180 .. This section should contain ABI changes. Sample format:
181
182    * Add a short 1-2 sentence description of the ABI change that was announced in
183      the previous releases and made in this release. Use fixed width quotes for
184      ``rte_function_names`` or ``rte_struct_names``. Use the past tense.
185
186    This section is a comment. Make sure to start the actual text at the margin.
187
188
189
190 Shared Library Versions
191 -----------------------
192
193 .. Update any library version updated in this release and prepend with a ``+``
194    sign, like this:
195
196      libethdev.so.4
197      librte_acl.so.2
198    + librte_cfgfile.so.2
199      librte_cmdline.so.2
200
201
202
203 The libraries prepended with a plus sign were incremented in this version.
204
205 .. code-block:: diff
206
207      libethdev.so.4
208      librte_acl.so.2
209      librte_cfgfile.so.2
210      librte_cmdline.so.2
211      librte_cryptodev.so.1
212      librte_distributor.so.1
213    + librte_eal.so.3
214      librte_hash.so.2
215      librte_ip_frag.so.1
216      librte_jobstats.so.1
217      librte_kni.so.2
218      librte_kvargs.so.1
219      librte_lpm.so.2
220      librte_mbuf.so.2
221      librte_mempool.so.2
222      librte_meter.so.1
223      librte_pdump.so.1
224      librte_pipeline.so.3
225      librte_pmd_bond.so.1
226      librte_pmd_ring.so.2
227      librte_port.so.3
228      librte_power.so.1
229      librte_reorder.so.1
230      librte_ring.so.1
231      librte_sched.so.1
232      librte_table.so.2
233      librte_timer.so.1
234      librte_vhost.so.3
235
236
237 Tested Platforms
238 ----------------
239
240 .. This section should contain a list of platforms that were tested with this release.
241
242    The format is:
243
244    #. Platform name.
245
246       * Platform details.
247       * Platform details.
248
249    This section is a comment. Make sure to start the actual text at the margin.
250
251
252 Tested NICs
253 -----------
254
255 .. This section should contain a list of NICs that were tested with this release.
256
257    The format is:
258
259    #. NIC name.
260
261       * NIC details.
262       * NIC details.
263
264    This section is a comment. Make sure to start the actual text at the margin.
265
266
267 Tested OSes
268 -----------
269
270 .. This section should contain a list of OSes that were tested with this release.
271    The format is as follows, in alphabetical order:
272
273    * CentOS 7.0
274    * Fedora 23
275    * Fedora 24
276    * FreeBSD 10.3
277    * Red Hat Enterprise Linux 7.2
278    * SUSE Enterprise Linux 12
279    * Ubuntu 15.10
280    * Ubuntu 16.04 LTS
281    * Wind River Linux 8
282
283    This section is a comment. Make sure to start the actual text at the margin.