New upstream version 16.11.9
[deb_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 from software.
46   * Added new functions ``rte_get_ptype_*()`` to dump a packet type as a string.
47
48 * **Improved offloads support in mbuf.**
49
50   * Added a new function ``rte_raw_cksum_mbuf()`` to process the checksum of
51     data embedded in an mbuf chain.
52   * Added new Rx checksum flags in mbufs to describe more states: unknown,
53     good, bad, or not present (useful for virtual drivers). This modification
54     was done for IP and L4.
55   * Added a new Rx LRO mbuf flag, used when packets are coalesced. This
56     flag indicates that the segment size of original packets is known.
57
58 * **Added vhost-user dequeue zero copy support.**
59
60   The copy in the dequeue path is avoided in order to improve the performance.
61   In the VM2VM case, the boost is quite impressive. The bigger the packet size,
62   the bigger performance boost you may get. However, for the VM2NIC case, there
63   are some limitations, so the boost is not as  impressive as the VM2VM case.
64   It may even drop quite a bit for small packets.
65
66   For that reason, this feature is disabled by default. It can be enabled when
67   the ``RTE_VHOST_USER_DEQUEUE_ZERO_COPY`` flag is set. Check the VHost section
68   of the Programming Guide for more information.
69
70 * **Added vhost-user indirect descriptors support.**
71
72   If the indirect descriptor feature is enabled, each packet sent by the guest
73   will take exactly one slot in the enqueue virtqueue. Without this feature, as in
74   the current version, even 64 bytes packets take two slots with Virtio PMD on guest
75   side.
76
77   The main impact is better performance for 0% packet loss use-cases, as it
78   behaves as if the virtqueue size was enlarged, so more packets can be buffered
79   in the case of system perturbations. On the downside, small performance degradations
80   were measured when running micro-benchmarks.
81
82 * **Added vhost PMD xstats.**
83
84   Added extended statistics to vhost PMD from a per port perspective.
85
86 * **Supported offloads with virtio.**
87
88   Added support for the following offloads in virtio:
89
90   * Rx/Tx checksums.
91   * LRO.
92   * TSO.
93
94 * **Added virtio NEON support for ARM.**
95
96   Added NEON support for ARM based virtio.
97
98 * **Updated the ixgbe base driver.**
99
100   Updated the ixgbe base driver, including the following changes:
101
102   * Added X550em_a 10G PHY support.
103   * Added support for flow control auto negotiation for X550em_a 1G PHY.
104   * Added X550em_a FW ALEF support.
105   * Increased mailbox version to ``ixgbe_mbox_api_13``.
106   * Added two MAC operations for Hyper-V support.
107
108 * **Added APIs for VF management to the ixgbe PMD.**
109
110   Eight new APIs have been added to the ixgbe PMD for VF management from the PF.
111   The declarations for the API's can be found in ``rte_pmd_ixgbe.h``.
112
113 * **Updated the enic driver.**
114
115   * Added update to use interrupt for link status checking instead of polling.
116   * Added more flow director modes on UCS Blade with firmware version >= 2.0(13e).
117   * Added full support for MTU update.
118   * Added support for the ``rte_eth_rx_queue_count`` function.
119
120 * **Updated the mlx5 driver.**
121
122   * Added support for RSS hash results.
123   * Added several performance improvements.
124   * Added several bug fixes.
125
126 * **Updated the QAT PMD.**
127
128   The QAT PMD was updated with additional support for:
129
130   * MD5_HMAC algorithm.
131   * SHA224-HMAC algorithm.
132   * SHA384-HMAC algorithm.
133   * GMAC algorithm.
134   * KASUMI (F8 and F9) algorithm.
135   * 3DES algorithm.
136   * NULL algorithm.
137   * C3XXX device.
138   * C62XX device.
139
140 * **Added openssl PMD.**
141
142   A new crypto PMD has been added, which provides several ciphering and hashing algorithms.
143   All cryptography operations use the Openssl library crypto API.
144
145 * **Updated the IPsec example.**
146
147   Updated the IPsec example with the following support:
148
149   * Configuration file support.
150   * AES CBC IV generation with cipher forward function.
151   * AES GCM/CTR mode.
152
153 * **Added support for new gcc -march option.**
154
155   The GCC 4.9 ``-march`` option supports the Intel processor code names.
156   The config option ``RTE_MACHINE`` can be used to pass code names to the compiler via the ``-march`` flag.
157
158
159 Resolved Issues
160 ---------------
161
162 .. This section should contain bug fixes added to the relevant sections. Sample format:
163
164    * **code/section Fixed issue in the past tense with a full stop.**
165
166      Add a short 1-2 sentence description of the resolved issue in the past tense.
167      The title should contain the code/lib section like a commit message.
168      Add the entries in alphabetic order in the relevant sections below.
169
170    This section is a comment. Make sure to start the actual text at the margin.
171
172
173 Drivers
174 ~~~~~~~
175
176 * **enic: Fixed several flow director issues.**
177
178 * **enic: Fixed inadvertent setting of L4 checksum ptype on ICMP packets.**
179
180 * **enic: Fixed high driver overhead when servicing Rx queues beyond the first.**
181
182
183
184 Known Issues
185 ------------
186
187 .. This section should contain new known issues in this release. Sample format:
188
189    * **Add title in present tense with full stop.**
190
191      Add a short 1-2 sentence description of the known issue in the present
192      tense. Add information on any known workarounds.
193
194    This section is a comment. Make sure to start the actual text at the margin.
195
196 * **L3fwd-power app does not work properly when Rx vector is enabled.**
197
198   The L3fwd-power app doesn't work properly with some drivers in vector mode
199   since the queue monitoring works differently between scalar and vector modes
200   leading to incorrect frequency scaling. In addition, L3fwd-power application
201   requires the mbuf to have correct packet type set but in some drivers the
202   vector mode must be disabled for this.
203
204   Therefore, in order to use L3fwd-power, vector mode should be disabled
205   via the config file.
206
207 * **Digest address must be supplied for crypto auth operation on QAT PMD.**
208
209   The cryptodev API specifies that if the rte_crypto_sym_op.digest.data field,
210   and by inference the digest.phys_addr field which points to the same location,
211   is not set for an auth operation the driver is to understand that the digest
212   result is located immediately following the region over which the digest is
213   computed. The QAT PMD doesn't correctly handle this case and reads and writes
214   to an incorrect location.
215
216   Callers can workaround this by always supplying the digest virtual and
217   physical address fields in the rte_crypto_sym_op for an auth operation.
218
219
220 API Changes
221 -----------
222
223 .. This section should contain API changes. Sample format:
224
225    * Add a short 1-2 sentence description of the API change. Use fixed width
226      quotes for ``rte_function_names`` or ``rte_struct_names``. Use the past tense.
227
228    This section is a comment. Make sure to start the actual text at the margin.
229
230 * The driver naming convention has been changed to make them more
231   consistent. It especially impacts ``--vdev`` arguments. For example
232   ``eth_pcap`` becomes ``net_pcap`` and ``cryptodev_aesni_mb_pmd`` becomes
233   ``crypto_aesni_mb``.
234
235   For backward compatibility an alias feature has been enabled to support the
236   original names.
237
238 * The log history has been removed.
239
240 * The ``rte_ivshmem`` feature (including library and EAL code) has been removed
241   in 16.11 because it had some design issues which were not planned to be fixed.
242
243 * The ``file_name`` data type of ``struct rte_port_source_params`` and
244   ``struct rte_port_sink_params`` is changed from ``char *`` to ``const char *``.
245
246 * **Improved device/driver hierarchy and generalized hotplugging.**
247
248   The device and driver relationship has been restructured by introducing generic
249   classes. This paves the way for having PCI, VDEV and other device types as
250   instantiated objects rather than classes in themselves. Hotplugging has also
251   been generalized into EAL so that Ethernet or crypto devices can use the
252   common infrastructure.
253
254   * Removed ``pmd_type`` as a way of segregation of devices.
255   * Moved ``numa_node`` and ``devargs`` into ``rte_driver`` from
256     ``rte_pci_driver``. These can now be used by any instantiated object of
257     ``rte_driver``.
258   * Added ``rte_device`` class and all PCI and VDEV devices inherit from it
259   * Renamed devinit/devuninit handlers to probe/remove to make it more
260     semantically correct with respect to the device <=> driver relationship.
261   * Moved hotplugging support to EAL. Hereafter, PCI and vdev can use the
262     APIs ``rte_eal_dev_attach`` and ``rte_eal_dev_detach``.
263   * Renamed helpers and support macros to make them more synonymous
264     with their device types
265     (e.g. ``PMD_REGISTER_DRIVER`` => ``RTE_PMD_REGISTER_PCI``).
266   * Device naming functions have been generalized from ethdev and cryptodev
267     to EAL. ``rte_eal_pci_device_name`` has been introduced for obtaining
268     unique device name from PCI Domain-BDF description.
269   * Virtual device registration APIs have been added: ``rte_eal_vdrv_register``
270     and ``rte_eal_vdrv_unregister``.
271
272
273 ABI Changes
274 -----------
275
276 .. This section should contain ABI changes. Sample format:
277
278    * Add a short 1-2 sentence description of the ABI change that was announced in
279      the previous releases and made in this release. Use fixed width quotes for
280      ``rte_function_names`` or ``rte_struct_names``. Use the past tense.
281
282    This section is a comment. Make sure to start the actual text at the margin.
283
284
285
286 Shared Library Versions
287 -----------------------
288
289 .. Update any library version updated in this release and prepend with a ``+``
290    sign, like this:
291
292      libethdev.so.4
293      librte_acl.so.2
294    + librte_cfgfile.so.2
295      librte_cmdline.so.2
296
297
298
299 The libraries prepended with a plus sign were incremented in this version.
300
301 .. code-block:: diff
302
303      librte_acl.so.2
304      librte_cfgfile.so.2
305      librte_cmdline.so.2
306    + librte_cryptodev.so.2
307      librte_distributor.so.1
308    + librte_eal.so.3
309    + librte_ethdev.so.5
310      librte_hash.so.2
311      librte_ip_frag.so.1
312      librte_jobstats.so.1
313      librte_kni.so.2
314      librte_kvargs.so.1
315      librte_lpm.so.2
316      librte_mbuf.so.2
317      librte_mempool.so.2
318      librte_meter.so.1
319      librte_net.so.1
320      librte_pdump.so.1
321      librte_pipeline.so.3
322      librte_pmd_bond.so.1
323      librte_pmd_ring.so.2
324      librte_port.so.3
325      librte_power.so.1
326      librte_reorder.so.1
327      librte_ring.so.1
328      librte_sched.so.1
329      librte_table.so.2
330      librte_timer.so.1
331      librte_vhost.so.3
332
333
334 Tested Platforms
335 ----------------
336
337 .. This section should contain a list of platforms that were tested with this release.
338
339    The format is:
340
341    #. Platform name.
342
343       * Platform details.
344       * Platform details.
345
346    This section is a comment. Make sure to start the actual text at the margin.
347
348 #. SuperMicro 1U
349
350    - BIOS: 1.0c
351    - Processor: Intel(R) Atom(TM) CPU C2758 @ 2.40GHz
352
353 #. SuperMicro 1U
354
355    - BIOS: 1.0a
356    - Processor: Intel(R) Xeon(R) CPU D-1540 @ 2.00GHz
357    - Onboard NIC: Intel(R) X552/X557-AT (2x10G)
358
359      - Firmware-version: 0x800001cf
360      - Device ID (PF/VF): 8086:15ad /8086:15a8
361
362    - kernel driver version: 4.2.5 (ixgbe)
363
364 #. SuperMicro 2U
365
366    - BIOS: 1.0a
367    - Processor: Intel(R) Xeon(R) CPU E5-4667 v3 @ 2.00GHz
368
369 #. Intel(R) Server board S2600GZ
370
371    - BIOS: SE5C600.86B.02.02.0002.122320131210
372    - Processor: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
373
374 #. Intel(R) Server board W2600CR
375
376    - BIOS: SE5C600.86B.02.01.0002.082220131453
377    - Processor: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
378
379 #. Intel(R) Server board S2600CWT
380
381    - BIOS: SE5C610.86B.01.01.0009.060120151350
382    - Processor: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz
383
384 #. Intel(R) Server board S2600WTT
385
386    - BIOS: SE5C610.86B.01.01.0005.101720141054
387    - Processor: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz
388
389 #. Intel(R) Server board S2600WTT
390
391    - BIOS: SE5C610.86B.11.01.0044.090120151156
392    - Processor: Intel(R) Xeon(R) CPU E5-2695 v4 @ 2.10GHz
393
394 #. Intel(R) Server board S2600WTT
395
396    - Processor: Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz
397
398 #. Intel(R) Server
399
400    - Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
401
402 #. IBM(R) Power8(R)
403
404    - Machine type-model: 8247-22L
405    - Firmware FW810.21 (SV810_108)
406    - Processor: POWER8E (raw), AltiVec supported
407
408
409 Tested NICs
410 -----------
411
412 .. This section should contain a list of NICs that were tested with this release.
413
414    The format is:
415
416    #. NIC name.
417
418       * NIC details.
419       * NIC details.
420
421    This section is a comment. Make sure to start the actual text at the margin.
422
423 #. Intel(R) Ethernet Controller X540-AT2
424
425    - Firmware version: 0x80000389
426    - Device id (pf): 8086:1528
427    - Driver version: 3.23.2 (ixgbe)
428
429 #. Intel(R) 82599ES 10 Gigabit Ethernet Controller
430
431    - Firmware version: 0x61bf0001
432    - Device id (pf/vf): 8086:10fb / 8086:10ed
433    - Driver version: 4.0.1-k (ixgbe)
434
435 #. Intel(R) Corporation Ethernet Connection X552/X557-AT 10GBASE-T
436
437    - Firmware version: 0x800001cf
438    - Device id (pf/vf): 8086:15ad / 8086:15a8
439    - Driver version: 4.2.5 (ixgbe)
440
441 #. Intel(R) Ethernet Converged Network Adapter X710-DA4 (4x10G)
442
443    - Firmware version: 5.05
444    - Device id (pf/vf): 8086:1572 / 8086:154c
445    - Driver version: 1.5.23 (i40e)
446
447 #. Intel(R) Ethernet Converged Network Adapter X710-DA2 (2x10G)
448
449    - Firmware version: 5.05
450    - Device id (pf/vf): 8086:1572 / 8086:154c
451    - Driver version: 1.5.23 (i40e)
452
453 #. Intel(R) Ethernet Converged Network Adapter XL710-QDA1 (1x40G)
454
455    - Firmware version: 5.05
456    - Device id (pf/vf): 8086:1584 / 8086:154c
457    - Driver version: 1.5.23 (i40e)
458
459 #. Intel(R) Ethernet Converged Network Adapter XL710-QDA2 (2X40G)
460
461    - Firmware version: 5.05
462    - Device id (pf/vf): 8086:1583 / 8086:154c
463    - Driver version: 1.5.23 (i40e)
464
465 #. Intel(R) Corporation I350 Gigabit Network Connection
466
467    - Firmware version: 1.48, 0x800006e7
468    - Device id (pf/vf): 8086:1521 / 8086:1520
469    - Driver version: 5.2.13-k (igb)
470
471 #. Intel(R) Ethernet Multi-host Controller FM10000
472
473    - Firmware version: N/A
474    - Device id (pf/vf): 8086:15d0
475    - Driver version: 0.17.0.9 (fm10k)
476
477 #. Mellanox(R) ConnectX(R)-4 10G MCX4111A-XCAT (1x10G)
478
479    * Host interface: PCI Express 3.0 x8
480    * Device ID: 15b3:1013
481    * MLNX_OFED: 3.4-1.0.0.0
482    * Firmware version: 12.17.1010
483
484 #. Mellanox(R) ConnectX(R)-4 10G MCX4121A-XCAT (2x10G)
485
486    * Host interface: PCI Express 3.0 x8
487    * Device ID: 15b3:1013
488    * MLNX_OFED: 3.4-1.0.0.0
489    * Firmware version: 12.17.1010
490
491 #. Mellanox(R) ConnectX(R)-4 25G MCX4111A-ACAT (1x25G)
492
493    * Host interface: PCI Express 3.0 x8
494    * Device ID: 15b3:1013
495    * MLNX_OFED: 3.4-1.0.0.0
496    * Firmware version: 12.17.1010
497
498 #. Mellanox(R) ConnectX(R)-4 25G MCX4121A-ACAT (2x25G)
499
500    * Host interface: PCI Express 3.0 x8
501    * Device ID: 15b3:1013
502    * MLNX_OFED: 3.4-1.0.0.0
503    * Firmware version: 12.17.1010
504
505 #. Mellanox(R) ConnectX(R)-4 40G MCX4131A-BCAT/MCX413A-BCAT (1x40G)
506
507    * Host interface: PCI Express 3.0 x8
508    * Device ID: 15b3:1013
509    * MLNX_OFED: 3.4-1.0.0.0
510    * Firmware version: 12.17.1010
511
512 #. Mellanox(R) ConnectX(R)-4 40G MCX415A-BCAT (1x40G)
513
514    * Host interface: PCI Express 3.0 x16
515    * Device ID: 15b3:1013
516    * MLNX_OFED: 3.4-1.0.0.0
517    * Firmware version: 12.17.1010
518
519 #. Mellanox(R) ConnectX(R)-4 50G MCX4131A-GCAT/MCX413A-GCAT (1x50G)
520
521    * Host interface: PCI Express 3.0 x8
522    * Device ID: 15b3:1013
523    * MLNX_OFED: 3.4-1.0.0.0
524    * Firmware version: 12.17.1010
525
526 #. Mellanox(R) ConnectX(R)-4 50G MCX414A-BCAT (2x50G)
527
528    * Host interface: PCI Express 3.0 x8
529    * Device ID: 15b3:1013
530    * MLNX_OFED: 3.4-1.0.0.0
531    * Firmware version: 12.17.1010
532
533 #. Mellanox(R) ConnectX(R)-4 50G MCX415A-GCAT/MCX416A-BCAT/MCX416A-GCAT (2x50G)
534
535    * Host interface: PCI Express 3.0 x16
536    * Device ID: 15b3:1013
537    * MLNX_OFED: 3.4-1.0.0.0
538    * Firmware version: 12.17.1010
539
540 #. Mellanox(R) ConnectX(R)-4 50G MCX415A-CCAT (1x100G)
541
542    * Host interface: PCI Express 3.0 x16
543    * Device ID: 15b3:1013
544    * MLNX_OFED: 3.4-1.0.0.0
545    * Firmware version: 12.17.1010
546
547 #. Mellanox(R) ConnectX(R)-4 100G MCX416A-CCAT (2x100G)
548
549    * Host interface: PCI Express 3.0 x16
550    * Device ID: 15b3:1013
551    * MLNX_OFED: 3.4-1.0.0.0
552    * Firmware version: 12.17.1010
553
554 #. Mellanox(R) ConnectX(R)-4 Lx 10G MCX4121A-XCAT (2x10G)
555
556    * Host interface: PCI Express 3.0 x8
557    * Device ID: 15b3:1015
558    * MLNX_OFED: 3.4-1.0.0.0
559    * Firmware version: 14.17.1010
560
561 #. Mellanox(R) ConnectX(R)-4 Lx 25G MCX4121A-ACAT (2x25G)
562
563    * Host interface: PCI Express 3.0 x8
564    * Device ID: 15b3:1015
565    * MLNX_OFED: 3.4-1.0.0.0
566    * Firmware version: 14.17.1010
567
568
569 Tested OSes
570 -----------
571
572 .. This section should contain a list of OSes that were tested with this release.
573    The format is as follows, in alphabetical order:
574
575    * CentOS 7.0
576    * Fedora 23
577    * Fedora 24
578    * FreeBSD 10.3
579    * Red Hat Enterprise Linux 7.2
580    * SUSE Enterprise Linux 12
581    * Ubuntu 15.10
582    * Ubuntu 16.04 LTS
583    * Wind River Linux 8
584
585    This section is a comment. Make sure to start the actual text at the margin.
586
587 * CentOS 7.2
588 * Fedora 23
589 * Fedora 24
590 * FreeBSD 10.3
591 * FreeBSD 11
592 * Red Hat Enterprise Linux Server release 6.7 (Santiago)
593 * Red Hat Enterprise Linux Server release 7.0 (Maipo)
594 * Red Hat Enterprise Linux Server release 7.2 (Maipo)
595 * SUSE Enterprise Linux 12
596 * Wind River Linux 6.0.0.26
597 * Wind River Linux 8
598 * Ubuntu 14.04
599 * Ubuntu 15.04
600 * Ubuntu 16.04
601
602 Fixes in 16.11 LTS Release
603 --------------------------
604
605 16.11.1
606 ~~~~~~~
607
608 * app/test: fix symmetric session free in crypto perf tests
609 * app/testpmd: fix check for invalid ports
610 * app/testpmd: fix static build link ordering
611 * crypto/aesni_gcm: fix IV size in capabilities
612 * crypto/aesni_gcm: fix J0 padding bytes
613 * crypto/aesni_mb: fix incorrect crypto session
614 * crypto/openssl: fix extra bytes written at end of data
615 * crypto/openssl: fix indentation in guide
616 * crypto/qat: fix IV size in capabilities
617 * crypto/qat: fix to avoid buffer overwrite in OOP case
618 * cryptodev: fix crash on null dereference
619 * cryptodev: fix loop in device query
620 * devargs: reset driver name pointer on parsing failure
621 * drivers/crypto: fix different auth/cipher keys
622 * ethdev: check maximum number of queues for statistics
623 * ethdev: fix extended statistics name index
624 * ethdev: fix port data mismatched in multiple process model
625 * ethdev: fix port lookup if none
626 * ethdev: remove invalid function from version map
627 * examples/ethtool: fix driver information
628 * examples/ethtool: fix querying non-PCI devices
629 * examples/ip_pipeline: fix coremask limitation
630 * examples/ip_pipeline: fix parsing of pass-through pipeline
631 * examples/l2fwd-crypto: fix overflow
632 * examples/vhost: fix calculation of mbuf count
633 * examples/vhost: fix lcore initialization
634 * mempool: fix API documentation
635 * mempool: fix stack handler dequeue
636 * net/af_packet: fix fd use after free
637 * net/bnx2x: fix Rx mode configuration
638 * net/cxgbe/base: initialize variable before reading EEPROM
639 * net/cxgbe: fix parenthesis on bitwise operation
640 * net/ena: fix setting host attributes
641 * net/enic: fix hardcoding of some flow director masks
642 * net/enic: fix memory leak with oversized Tx packets
643 * net/enic: remove unnecessary function parameter attributes
644 * net/i40e: enable auto link update for 25G
645 * net/i40e: fix Rx checksum flag
646 * net/i40e: fix TC bandwidth definition
647 * net/i40e: fix VF reset flow
648 * net/i40e: fix checksum flag in x86 vector Rx
649 * net/i40e: fix crash in close
650 * net/i40e: fix deletion of all macvlan filters
651 * net/i40e: fix ethertype filter on X722
652 * net/i40e: fix link update delay
653 * net/i40e: fix logging for Tx free threshold check
654 * net/i40e: fix segment number in reassemble process
655 * net/i40e: fix wrong return value when handling PF message
656 * net/i40e: fix xstats value mapping
657 * net/i40evf: fix casting between structs
658 * net/i40evf: fix reporting of imissed packets
659 * net/ixgbe: fix blocked interrupts
660 * net/ixgbe: fix received packets number for ARM
661 * net/ixgbe: fix received packets number for ARM NEON
662 * net/ixgbevf: fix max packet length
663 * net/mlx5: fix RSS hash result for flows
664 * net/mlx5: fix Rx packet validation and type
665 * net/mlx5: fix Tx doorbell
666 * net/mlx5: fix endianness in Tx completion queue
667 * net/mlx5: fix inconsistent link status
668 * net/mlx5: fix leak when starvation occurs
669 * net/mlx5: fix link status query
670 * net/mlx5: fix memory leak when parsing device params
671 * net/mlx5: fix missing inline attributes
672 * net/mlx5: fix updating total length of multi-packet send
673 * net/mlx: fix IPv4 and IPv6 packet type
674 * net/nfp: fix VLAN offload flags check
675 * net/nfp: fix typo in Tx offload capabilities
676 * net/pcap: fix timestamps in output pcap file
677 * net/qede/base: fix FreeBSD build
678 * net/qede: add vendor/device id info
679 * net/qede: fix PF fastpath status block index
680 * net/qede: fix filtering code
681 * net/qede: fix function declaration
682 * net/qede: fix per queue statisitics
683 * net/qede: fix resource leak
684 * net/vhost: fix socket file deleted on stop
685 * net/vhost: fix unix socket not removed as closing
686 * net/virtio-user: fix not properly reset device
687 * net/virtio-user: fix wrongly get/set features
688 * net/virtio: fix build without virtio-user
689 * net/virtio: fix crash when number of virtio devices > 1
690 * net/virtio: fix multiple process support
691 * net/virtio: fix performance regression due to TSO
692 * net/virtio: fix rewriting LSC flag
693 * net/virtio: fix wrong Rx/Tx method for secondary process
694 * net/virtio: optimize header reset on any layout
695 * net/virtio: store IO port info locally
696 * net/virtio: store PCI operators pointer locally
697 * net/vmxnet3: fix Rx deadlock
698 * pci: fix check of mknod
699 * pmdinfogen: fix endianness with cross-compilation
700 * pmdinfogen: fix null dereference
701 * sched: fix crash when freeing port
702 * usertools: fix active interface detection when binding
703 * vdev: fix detaching with alias
704 * vfio: fix file descriptor leak in multi-process
705 * vhost: allow many vhost-user ports
706 * vhost: do not GSO when no header is present
707 * vhost: fix dead loop in enqueue path
708 * vhost: fix guest/host physical address mapping
709 * vhost: fix long stall of negotiation
710 * vhost: fix memory leak
711
712 16.11.2
713 ~~~~~~~
714
715 * app/testpmd: fix TC mapping in DCB init config
716 * app/testpmd: fix crash at mbuf pool creation
717 * app/testpmd: fix exit without freeing resources
718 * app/testpmd: fix init config for multi-queue mode
719 * app/testpmd: fix number of mbufs in pool
720 * app: enable HW CRC strip by default
721 * crypto/openssl: fix AAD capabilities for AES-GCM
722 * crypto/openssl: fix AES-GCM capability
723 * crypto/qat: fix AES-GCM authentication length
724 * crypto/qat: fix IV zero physical address
725 * crypto/qat: fix dequeue statistics
726 * cryptodev: fix API digest length comments
727 * doc: add limitation of AAD size to QAT guide
728 * doc: explain zlib dependency for bnx2x
729 * eal/linux: fix build with glibc 2.25
730 * eal: fix debug macro redefinition
731 * examples/ip_fragmentation: fix check of packet type
732 * examples/l2fwd-crypto: fix AEAD tests when AAD is zero
733 * examples/l2fwd-crypto: fix packets array index
734 * examples/l2fwd-crypto: fix padding calculation
735 * examples/l3fwd-power: fix Rx descriptor size
736 * examples/l3fwd-power: fix handling no Rx queue
737 * examples/load_balancer: fix Tx flush
738 * examples/multi_process: fix timer update
739 * examples/performance-thread: fix build on FreeBSD
740 * examples/performance-thread: fix build on FreeBSD 10.0
741 * examples/performance-thread: fix compilation on Suse 11 SP2
742 * examples/quota_watermark: fix requirement for 2M pages
743 * examples: enable HW CRC strip by default
744 * examples: fix build clean on FreeBSD
745 * kni: fix build with kernel 4.11
746 * kni: fix crash caused by freeing mempool
747 * kni: fix possible memory leak
748 * mbuf: fix missing includes in exported header
749 * mk: fix lib filtering when linking app
750 * mk: fix quoting for ARM mtune argument
751 * mk: fix shell errors when building with clang
752 * net/bnx2x: fix transmit queue free threshold
753 * net/bonding: allow configuring jumbo frames without slaves
754 * net/bonding: fix updating slave link status
755 * net/cxgbe: fix possible null pointer dereference
756 * net/e1000/base: fix multicast setting in VF
757 * net/ena: cleanup if refilling of Rx descriptors fails
758 * net/ena: fix Rx descriptors allocation
759 * net/ena: fix delayed cleanup of Rx descriptors
760 * net/ena: fix return of hash control flushing
761 * net/fm10k: fix memory overflow in 32-bit SSE Rx
762 * net/fm10k: fix pointer cast
763 * net/i40e/base: fix potential out of bound array access
764 * net/i40e: add missing 25G link speed
765 * net/i40e: ensure vector mode is not used with QinQ
766 * net/i40e: fix TC bitmap of VEB
767 * net/i40e: fix VF link speed
768 * net/i40e: fix VF link status update
769 * net/i40e: fix allocation check
770 * net/i40e: fix compile error
771 * net/i40e: fix hash input set on X722
772 * net/i40e: fix incorrect packet index reference
773 * net/i40e: fix mbuf alloc failed counter
774 * net/i40e: fix memory overflow in 32-bit SSE Rx
775 * net/i40e: fix setup when bulk is disabled
776 * net/igb: fix VF MAC address setting
777 * net/igb: fix VF MAC address setting
778 * net/ixgbe/base: fix build error
779 * net/ixgbe: fix Rx queue blocking issue
780 * net/ixgbe: fix TC bandwidth setting
781 * net/ixgbe: fix VF Rx mode for allmulticast disabled
782 * net/ixgbe: fix all queues drop setting of DCB
783 * net/ixgbe: fix memory overflow in 32-bit SSE Rx
784 * net/ixgbe: fix multi-queue mode check in SRIOV mode
785 * net/ixgbe: fix setting MTU on stopped device
786 * net/ixgbevf: set xstats id values
787 * net/mlx4: fix Rx after mbuf alloc failure
788 * net/mlx4: fix returned values upon failed probing
789 * net/mlx4: update link status upon probing with LSC
790 * net/mlx5: fix Tx when first segment size is too short
791 * net/mlx5: fix VLAN stripping indication
792 * net/mlx5: fix an uninitialized variable
793 * net/mlx5: fix returned values upon failed probing
794 * net/mlx5: fix reusing Rx/Tx queues
795 * net/mlx5: fix supported packets types
796 * net/nfp: fix packet/data length conversion
797 * net/pcap: fix using mbuf after freeing it
798 * net/qede/base: fix find zero bit macro
799 * net/qede: fix FW version string for VF
800 * net/qede: fix default MAC address handling
801 * net/qede: fix fastpath rings reset phase
802 * net/qede: fix missing UDP protocol in RSS offload types
803 * net/thunderx: fix 32-bit build
804 * net/thunderx: fix build on FreeBSD
805 * net/thunderx: fix deadlock in Rx path
806 * net/thunderx: fix stats access out of bounds
807 * net/virtio-user: fix address on 32-bit system
808 * net/virtio-user: fix overflow
809 * net/virtio: disable LSC interrupt if MSIX not enabled
810 * net/virtio: fix MSI-X for modern devices
811 * net/virtio: fix crash when closing twice
812 * net/virtio: fix link status always being up
813 * net/virtio: fix link status always down
814 * net/virtio: fix queue notify
815 * net/vmxnet3: fix build with gcc 7
816 * net/vmxnet3: fix queue size changes
817 * net: fix stripped VLAN flag for offload emulation
818 * nic_uio: fix device binding at boot
819 * pci: fix device registration on FreeBSD
820 * test/cmdline: fix missing break in switch
821 * test/mempool: free mempool on exit
822 * test: enable HW CRC strip by default
823 * vfio: fix disabling INTx
824 * vfio: fix secondary process start
825 * vhost: change log levels in client mode
826 * vhost: fix dequeue zero copy
827 * vhost: fix false sharing
828 * vhost: fix fd leaks for vhost-user server mode
829 * vhost: fix max queues
830 * vhost: fix multiple queue not enabled for old kernels
831 * vhost: fix use after free
832
833 16.11.3
834 ~~~~~~~
835
836 * contigmem: do not zero pages during each mmap
837 * contigmem: free allocated memory on error
838 * crypto/aesni_mb: fix HMAC supported key sizes
839 * cryptodev: fix device stop function
840 * crypto/openssl: fix HMAC supported key sizes
841 * crypto/qat: fix HMAC supported key sizes
842 * crypto/qat: fix NULL authentication hang
843 * crypto/qat: fix SHA384-HMAC block size
844 * doc: remove incorrect limitation on AESNI-MB PMD
845 * doc: remove incorrect limitation on QAT PMD
846 * eal: fix config file path when checking process
847 * examples/l2fwd-crypto: fix application help
848 * examples/l2fwd-crypto: fix option parsing
849 * examples/l2fwd-crypto: fix padding
850 * examples/l3fwd: fix IPv6 packet type parse
851 * examples/qos_sched: fix build for less lcores
852 * ip_frag: free mbufs on reassembly table destroy
853 * kni: fix build with gcc 7.1
854 * lpm: fix index of tbl8
855 * mbuf: fix debug checks for headroom and tailroom
856 * mbuf: fix doxygen comment of bulk alloc
857 * mbuf: fix VXLAN port in comment
858 * mem: fix malloc element resize with padding
859 * net/bnxt: check invalid L2 filter id
860 * net/bnxt: enable default VNIC allocation
861 * net/bnxt: fix autoneg on 10GBase-T links
862 * net/bnxt: fix get link config
863 * net/bnxt: fix reporting of link status
864 * net/bnxt: fix set link config
865 * net/bnxt: fix set link config
866 * net/bnxt: fix vnic cleanup
867 * net/bnxt: free filter before reusing it
868 * net/bonding: change link status check to no-wait
869 * net/bonding: fix number of bonding Tx/Rx queues
870 * net/bonding: fix when NTT flag updated
871 * net/cxgbe: fix port statistics
872 * net/e1000: fix LSC interrupt
873 * net/ena: fix cleanup of the Tx bufs
874 * net/enic: fix build with gcc 7.1
875 * net/enic: fix crash when freeing 0 packet to mempool
876 * net/fm10k: initialize link status in device start
877 * net/i40e: add return value checks
878 * net/i40e/base: fix Tx error stats on VF
879 * net/i40e: exclude internal packet's byte count
880 * net/i40e: fix division by 0
881 * net/i40e: fix ethertype filter for new FW
882 * net/i40e: fix link down and negotiation
883 * net/i40e: fix Rx data segment buffer length
884 * net/i40e: fix VF statistics
885 * net/igb: fix add/delete of flex filters
886 * net/igb: fix checksum valid flags
887 * net/igb: fix flex filter length
888 * net/ixgbe: fix mirror rule index overflow
889 * net/ixgbe: fix Rx/Tx queue interrupt for x550 devices
890 * net/mlx4: fix mbuf poisoning in debug code
891 * net/mlx4: fix probe failure report
892 * net/mlx5: fix build with gcc 7.1
893 * net/mlx5: fix completion buffer size
894 * net/mlx5: fix exception handling
895 * net/mlx5: fix inconsistent link status query
896 * net/mlx5: fix redundant free of Tx buffer
897 * net/qede: fix chip details print
898 * net/virtio: do not claim to support LRO
899 * net/virtio: do not falsely claim to do IP checksum
900 * net/virtio-user: fix crash when detaching device
901 * net/virtio: zero the whole memory zone
902 * net/vmxnet3: fix filtering on promiscuous disabling
903 * net/vmxnet3: fix receive queue memory leak
904 * Revert "ip_frag: free mbufs on reassembly table destroy"
905 * test/bonding: fix memory corruptions
906 * test/bonding: fix mode 4 names
907 * test/bonding: fix namespace of the RSS tests
908 * test/bonding: fix parameters of a balance Tx
909 * test/crypto: fix overflow
910 * test/crypto: fix wrong AAD setting
911 * vhost: fix checking of device features
912 * vhost: fix guest pages memory leak
913 * vhost: fix IP checksum
914 * vhost: fix TCP checksum
915 * vhost: make page logging atomic
916
917 16.11.4
918 ~~~~~~~
919
920 * app/testpmd: fix forwarding between non consecutive ports
921 * app/testpmd: fix invalid port id parameters
922 * app/testpmd: fix mapping of user priority to DCB TC
923 * app/testpmd: fix packet throughput after stats reset
924 * app/testpmd: fix RSS structure initialisation
925 * app/testpmd: fix topology error message
926 * buildtools: check allocation error in pmdinfogen
927 * buildtools: fix icc build
928 * cmdline: fix compilation with -Og
929 * cmdline: fix warning for unused return value
930 * config: fix bnx2x option for armv7a
931 * cryptodev: fix build with -Ofast
932 * crypto/qat: fix SHA512-HMAC supported key size
933 * drivers/crypto: use snprintf return value correctly
934 * eal/bsd: fix missing interrupt stub functions
935 * eal: copy raw strings taken from command line
936 * eal: fix auxv open check for ARM and PPC
937 * eal/x86: fix atomic cmpset
938 * examples/ipsec-secgw: fix IPv6 payload length
939 * examples/ipsec-secgw: fix IP version check
940 * examples/l2fwd-cat: fix build with PQOS 1.4
941 * examples/l2fwd-crypto: fix uninitialized errno value
942 * examples/l2fwd_fork: fix message pool init
943 * examples/l3fwd-acl: check fseek return
944 * examples/multi_process: fix received message length
945 * examples/performance-thread: check thread creation
946 * examples/performance-thread: fix out-of-bounds sched array
947 * examples/performance-thread: fix out-of-bounds tls array
948 * examples/qos_sched: fix uninitialized config
949 * hash: fix eviction counter
950 * kni: fix build on RHEL 7.4
951 * kni: fix build on SLE12 SP3
952 * kni: fix ethtool build with kernel 4.11
953 * lpm6: fix compilation with -Og
954 * mem: fix malloc element free in debug mode
955 * net/bnxt: fix a bit shift operation
956 * net/bnxt: fix an issue with broadcast traffic
957 * net/bnxt: fix a potential null pointer dereference
958 * net/bnxt: fix interrupt handler
959 * net/bnxt: fix link handling and configuration
960 * net/bnxt: fix Rx offload capability
961 * net/bnxt: fix Tx offload capability
962 * net/bnxt: set checksum offload flags correctly
963 * net/bnxt: update status of Rx IP/L4 CKSUM
964 * net/bonding: fix LACP slave deactivate behavioral
965 * net/cxgbe: fix memory leak
966 * net/enic: fix assignment
967 * net/enic: fix packet loss after MTU change
968 * net/enic: fix possible null pointer dereference
969 * net: fix inner L2 length in packet type parser
970 * net/i40e/base: fix bool definition
971 * net/i40e: fix clear xstats bug in VF
972 * net/i40e: fix flexible payload configuration
973 * net/i40e: fix flow control watermark mismatch
974 * net/i40e: fix i40evf MAC filter table
975 * net/i40e: fix mbuf free in vector Tx
976 * net/i40e: fix memory leak if VF init fails
977 * net/i40e: fix mirror rule reset when port is closed
978 * net/i40e: fix mirror with firmware 6.0
979 * net/i40e: fix packet count for PF
980 * net/i40e: fix PF notify issue when VF is not up
981 * net/i40e: fix Rx packets number for NEON
982 * net/i40e: fix Rx queue interrupt mapping in VF
983 * net/i40e: fix uninitialized variable
984 * net/i40e: fix variable assignment
985 * net/i40e: fix VF cannot forward packets issue
986 * net/i40e: fix VFIO interrupt mapping in VF
987 * net/igb: fix memcpy length
988 * net/igb: fix Rx interrupt with VFIO and MSI-X
989 * net/ixgbe: fix adding a mirror rule
990 * net/ixgbe: fix mapping of user priority to TC
991 * net/ixgbe: fix PF DCB info
992 * net/ixgbe: fix uninitialized variable
993 * net/ixgbe: fix VFIO interrupt mapping in VF
994 * net/ixgbe: fix VF RX hang
995 * net/mlx5: fix clang build
996 * net/mlx5: fix clang compilation error
997 * net/mlx5: fix link speed bitmasks
998 * net/mlx5: fix probe failure report
999 * net/mlx5: fix Tx stats error counter definition
1000 * net/mlx5: fix Tx stats error counter logic
1001 * net/mlx5: improve stack usage during link update
1002 * net/nfp: fix RSS
1003 * net/nfp: fix stats struct initial value
1004 * net/pcap: fix memory leak in dumper open
1005 * net/qede/base: fix API return types
1006 * net/qede/base: fix division by zero
1007 * net/qede/base: fix for VF malicious indication
1008 * net/qede/base: fix macros to check chip revision/metal
1009 * net/qede/base: fix number of app table entries
1010 * net/qede/base: fix return code to align with FW
1011 * net/qede/base: fix to use a passed ptt handle
1012 * net/qede: fix icc build
1013 * net/virtio: fix compilation with -Og
1014 * net/virtio: fix mbuf port for simple Rx function
1015 * net/virtio: fix queue setup consistency
1016 * net/virtio: fix Tx packet length stats
1017 * net/virtio: fix untrusted scalar value
1018 * net/virtio: flush Rx queues on start
1019 * net/vmxnet3: fix dereference before null check
1020 * net/vmxnet3: fix MAC address set
1021 * net/vmxnet3: fix memory leak when releasing queues
1022 * pdump: fix possible mbuf leak on failure
1023 * ring: guarantee load/load order in enqueue and dequeue
1024 * test: fix assignment operation
1025 * test/memzone: fix memory leak
1026 * test/pmd_perf: fix crash with multiple devices
1027 * timer: use 64-bit specific code on more platforms
1028 * uio: fix compilation with -Og
1029 * usertools: fix device binding with python 3
1030 * vfio: fix close unchecked file descriptor
1031
1032 16.11.5
1033 ~~~~~~~
1034
1035 * app/procinfo: add compilation option in config
1036 * app/testpmd: fix crash of txonly with multiple segments
1037 * app/testpmd: fix flow director filter
1038 * app/testpmd: fix port index in RSS forward config
1039 * app/testpmd: fix port topology in RSS forward config
1040 * bus/pci: fix interrupt handler type
1041 * contigmem: fix build on FreeBSD 12
1042 * crypto/qat: fix allocation check and leak
1043 * crypto/qat: fix null auth algo overwrite
1044 * doc: fix outdated link to IPsec white paper
1045 * eal/ppc: remove the braces in memory barrier macros
1046 * eal/ppc: support sPAPR IOMMU for vfio-pci
1047 * eal: update assertion macro
1048 * eal/x86: use lock-prefixed instructions for SMP barrier
1049 * ethdev: fix data alignment
1050 * ethdev: fix link autonegotiation value
1051 * ethdev: fix missing imissed counter in xstats
1052 * ethdev: fix typo in functions comment
1053 * examples/bond: check mbuf allocation
1054 * examples/exception_path: align stats on cache line
1055 * examples/ip_pipeline: fix timer period unit
1056 * examples/ipsec-secgw: fix corner case for SPI value
1057 * examples/l3fwd-power: fix frequency detection
1058 * examples/l3fwd-power: fix Rx without interrupt
1059 * examples/vhost: fix sending ARP packet to self
1060 * examples/vhost: fix startup check
1061 * igb_uio: fix IRQ disable on recent kernels
1062 * igb_uio: fix MSI-X IRQ assignment with new IRQ function
1063 * igb_uio: switch to new irq function for MSI-X
1064 * keepalive: fix state alignment
1065 * kni: fix build with kernel 4.15
1066 * lpm: fix ARM big endian build
1067 * malloc: fix end for bounded elements
1068 * malloc: protect stats with lock
1069 * mbuf: cleanup function to get last segment
1070 * mbuf: fix NULL freeing when debug enabled
1071 * mem: fix mmap error check on huge page attach
1072 * memzone: fix leak on allocation error
1073 * mk: fix external build
1074 * mk: support renamed Makefile in external project
1075 * net/bnxt: fix broadcast cofiguration
1076 * net/bnxt: fix group info usage
1077 * net/bnxt: fix headroom initialization
1078 * net/bnxt: fix link speed setting with autoneg off
1079 * net/bnxt: fix Rx checksum flags
1080 * net/bnxt: fix size of Tx ring in HW
1081 * net/bnxt: parse checksum offload flags
1082 * net/bnxt: support new PCI IDs
1083 * net/bonding: check error of MAC address setting
1084 * net/bonding: fix activated slave in 8023ad mode
1085 * net/bonding: fix setting slave MAC addresses
1086 * net/e1000: fix mailbox interrupt handler
1087 * net/e1000: fix VF Rx interrupt enabling
1088 * net/ena: do not set Tx L4 offloads in Rx path
1089 * net/enic: fix crash due to static max number of queues
1090 * net/fm10k: fix logical port delete
1091 * net/i40e: add debug logs when writing global registers
1092 * net/i40e: add warnings when writing global registers
1093 * net/i40e/base: fix compile issue for GCC 6.3
1094 * net/i40e/base: fix link LED blink
1095 * net/i40e/base: fix NVM lock
1096 * net/i40e: check multi-driver option parsing
1097 * net/i40e: fix ARM big endian build
1098 * net/i40e: fix flag for MAC address write
1099 * net/i40e: fix flow director Rx resource defect
1100 * net/i40e: fix interrupt conflict when using multi-driver
1101 * net/i40e: fix multiple driver support issue
1102 * net/i40e: fix Rx interrupt
1103 * net/i40e: fix VF reset stats crash
1104 * net/i40e: fix VF Rx interrupt enabling
1105 * net/i40e: fix VLAN offload setting
1106 * net/i40e: fix VSI MAC filter on primary address change
1107 * net/i40e: implement vector PMD for altivec
1108 * net/igb: fix Tx queue number assignment
1109 * net/ixgbe/base: add media type of fixed fiber
1110 * net/ixgbe: fix ARM big endian build
1111 * net/ixgbe: fix mailbox interrupt handler
1112 * net/ixgbe: fix max queue number for VF
1113 * net/ixgbe: fix reset error handling
1114 * net/ixgbe: fix the failure of number of Tx queue check
1115 * net/ixgbe: fix VF Rx interrupt enabling
1116 * net/ixgbe: improve link state check on VF
1117 * net/mlx5: fix deadlock of link status alarm
1118 * net/mlx5: fix missing RSS capability
1119 * net/mlx5: fix MTU update
1120 * net/nfp: fix CRC strip check behaviour
1121 * net/nfp: fix jumbo settings
1122 * net/nfp: fix MTU settings
1123 * net/pcap: fix the NUMA id display in logs
1124 * net/qede/base: fix VF LRO tunnel configuration
1125 * net/qede: fix clearing of queue stats
1126 * net/qede: fix few log messages
1127 * net/qede: fix MTU set and max Rx pkt len usage
1128 * net/qede: fix to reject config with no Rx queue
1129 * net/szedata2: fix check of mmap return value
1130 * net/thunderx: fix multi segment Tx function return
1131 * net/vhost: fix log messages on create/destroy
1132 * net/virtio: fix incorrect cast
1133 * net/virtio: fix mbuf data offset for simple Rx
1134 * net/virtio: fix memory leak when reinitializing device
1135 * net/virtio: fix queue flushing with vector Rx enabled
1136 * net/virtio: fix resuming port with Rx vector path
1137 * net/virtio: fix Rx and Tx handler selection for ARM32
1138 * net/virtio: fix typo in function name
1139 * net/virtio: fix vector Rx flushing
1140 * net/virtio-user: fix start with kernel vhost
1141 * pdump: fix error check when creating/canceling thread
1142 * pmdinfogen: fix cross compilation for ARM big endian
1143 * test/crypto: fix missing include
1144 * test/memzone: fix freeing test
1145 * test/memzone: fix NULL freeing
1146 * test/memzone: fix wrong test
1147 * test/memzone: handle previously allocated memzones
1148 * test/pmd_perf: declare variables as static
1149 * test: register test as failed if setup failed
1150 * test/reorder: fix memory leak
1151 * test/ring_perf: fix memory leak
1152 * test/table: fix memory leak
1153 * test/table: fix uninitialized parameter
1154 * test/timer_perf: fix memory leak
1155 * usertools/devbind: remove unused function
1156 * vfio: fix enabled check on error
1157 * vhost: do not take lock on owner reset
1158 * vhost: fix crash
1159 * vhost: fix dequeue zero copy with virtio1
1160 * vhost: fix error code check when creating thread
1161 * vhost: fix mbuf free
1162 * vhost: protect active rings from async ring changes
1163
1164 16.11.6
1165 ~~~~~~~
1166
1167 * vhost: add support for non-contiguous indirect descs tables (fixes CVE-2018-1059)
1168 * vhost: check all range is mapped when translating GPAs (fixes CVE-2018-1059)
1169 * vhost: ensure all range is mapped when translating QVAs (fixes CVE-2018-1059)
1170 * vhost: handle virtually non-contiguous buffers in Rx (fixes CVE-2018-1059)
1171 * vhost: handle virtually non-contiguous buffers in Rx-mrg (fixes CVE-2018-1059)
1172 * vhost: handle virtually non-contiguous buffers in Tx (fixes CVE-2018-1059)
1173 * vhost-user: fix deadlock in case of NUMA realloc
1174
1175 16.11.7
1176 ~~~~~~~
1177
1178 * app/crypto-perf: fix parameters copy
1179 * app/testpmd: fix burst stats reporting
1180 * app/testpmd: fix command token
1181 * app/testpmd: fix forward ports Rx flush
1182 * app/testpmd: fix forward ports update
1183 * app/testpmd: fix slave port detection
1184 * app/testpmd: fix synchronic port hotplug
1185 * app/testpmd: fix valid ports prints
1186 * bus/pci: fix size of driver name buffer
1187 * crypto/zuc: do not set default op status
1188 * crypto/zuc: remove unnecessary check
1189 * doc: fix a typo in the EAL guide
1190 * drivers/net: fix icc deprecated parameter warning
1191 * drivers/net: fix link autoneg value for virtual PMDs
1192 * eal: declare trace buffer at top of own block
1193 * eal: explicit cast in rwlock functions
1194 * eal: explicit cast of builtin for bsf32
1195 * eal: explicit cast of core id when getting index
1196 * eal: fix casts in random functions
1197 * eal: fix typo in doc of pointer offset macro
1198 * eal/ppc: remove braces in SMP memory barrier macro
1199 * eal: remove unused path pattern
1200 * eal: support strlcpy function
1201 * ethdev: explicit cast of buffered Tx number
1202 * ethdev: explicit cast of queue count return
1203 * ethdev: fix queue start
1204 * ethdev: fix string length in name comparison
1205 * ethdev: fix type and scope of variables in Rx burst
1206 * ethdev: improve doc for name by port ID API
1207 * examples/exception_path: limit core count to 64
1208 * examples/performance-thread: fix return type of threads
1209 * hash: explicit casts for truncation in CRC32c
1210 * hash: fix comment for lookup
1211 * hash: move stack declaration at top of CRC32c function
1212 * ip_frag: fix double free of chained mbufs
1213 * ip_frag: fix some debug logs
1214 * kni: fix build on RHEL 7.5
1215 * kvargs: fix syntax in comments
1216 * mbuf: avoid integer promotion in prepend/adj/chain
1217 * mbuf: explicit cast of headroom on reset
1218 * mbuf: explicit cast of size on detach
1219 * mbuf: explicit casts of reference counter
1220 * mbuf: fix reference counter integer promotion
1221 * mbuf: fix Tx checksum offload API doc
1222 * mbuf: fix type of private size in detach
1223 * mempool: fix leak when no objects are populated
1224 * mempool: fix virtual address population
1225 * memzone: fix size on reserving biggest memzone
1226 * net/bnx2x: do not cast function pointers as a policy
1227 * net/bnx2x: fix for PCI FLR after ungraceful exit
1228 * net/bnx2x: fix KR2 device check
1229 * net/bnx2x: fix memzone name overrun
1230 * net/bnxt: avoid freeing memzone multiple times
1231 * net/bnxt: fix endianness of flag
1232 * net/bnxt: fix mbuf data offset initialization
1233 * net/bnxt: fix Rx checksum flags
1234 * net/bnxt: fix Rx checksum flags for tunnel frames
1235 * net/bnxt: fix Rx drop setting
1236 * net/bnxt: fix Rx mbuf and agg ring leak in dev stop
1237 * net/bonding: clear started state if start fails
1238 * net/bonding: export mode 4 slave info routine
1239 * net/bonding: fix setting VLAN ID on slave ports
1240 * net/enic: allocate stats DMA buffer upfront during probe
1241 * net/enic: fix crash on MTU update with non-setup queues
1242 * net: explicit cast in L4 checksum
1243 * net: explicit cast of IP checksum to 16-bit
1244 * net: explicit cast of multicast bit clearing
1245 * net: explicit cast of protocol in IPv6 checksum
1246 * net/i40e: fix failing to disable FDIR Tx queue
1247 * net/i40e: fix intr callback unregister by adding retry
1248 * net/i40e: fix link status update
1249 * net/i40e: fix link update no wait
1250 * net/i40e: fix shifts of signed values
1251 * net/ixgbe: fix DCB configuration
1252 * net/ixgbe: fix intr callback unregister by adding retry
1253 * net/ixgbe: fix too many interrupts
1254 * net/mlx5: fix ARM build
1255 * net/mlx5: fix double free on error handling
1256 * net/mlx5: fix resource leak in case of error
1257 * net: move stack variable at top of VLAN strip function
1258 * net/nfp: fix assigning port id in mbuf
1259 * net/nfp: fix barrier location
1260 * net/nfp: fix mbufs releasing when stop or close
1261 * net/nfp: fix memcpy out of source range
1262 * net/qede: fix alloc from socket 0
1263 * net/qede: fix strncpy
1264 * net/qede: fix unicast filter routine return code
1265 * net/qede: replace strncpy by strlcpy
1266 * net/szedata2: fix format string for PCI address
1267 * net/szedata2: fix total stats
1268 * net/thunderx: fix MTU configuration for jumbo packets
1269 * net/vhost: initialise device as inactive
1270 * net/virtio-user: fix hugepage files enumeration
1271 * net/vmxnet3: keep link state consistent
1272 * net/vmxnet3: set the queue shared buffer at start
1273 * Revert "vhost: fix device cleanup at stop"
1274 * spinlock/x86: move stack declaration before code
1275 * test/distributor: fix return type of thread function
1276 * test: fix memory flags test for low NUMA nodes number
1277 * test/mempool: fix autotest retry
1278 * test/pipeline: fix return type of stub miss
1279 * test/pipeline: fix type of table entry parameter
1280 * test/reorder: fix freeing mbuf twice
1281 * vhost: check cmsg not null
1282 * vhost: fix compilation issue when vhost debug enabled
1283 * vhost: fix dead lock on closing in server mode
1284 * vhost: fix device cleanup at stop
1285 * vhost: fix log macro name conflict
1286 * vhost: fix offset while mmaping log base address
1287 * vhost: fix realloc failure
1288 * vhost: fix typo in comment
1289 * vhost: improve dirty pages logging performance
1290
1291 16.11.8
1292 ~~~~~~~
1293
1294 * app/testpmd: fix DCB config
1295 * app/testpmd: fix VLAN TCI mask set error for FDIR
1296 * crypto/qat: fix checks for 3GPP algo bit params
1297 * doc: fix bonding command in testpmd
1298 * eal: fix bitmap documentation
1299 * eal: fix return codes on thread naming failure
1300 * eal/linux: fix invalid syntax in interrupts
1301 * ethdev: check queue stats mapping input arguments
1302 * ethdev: fix a doxygen comment for port allocation
1303 * ethdev: fix queue statistics mapping documentation
1304 * examples/exception_path: fix out-of-bounds read
1305 * examples/ipsec-secgw: fix bypass rule processing
1306 * examples/ipsec-secgw: fix IPv4 checksum at Tx
1307 * examples/l3fwd: remove useless include
1308 * examples/multi_process: build l2fwd_fork app
1309 * hash: fix a multi-writer race condition
1310 * hash: fix doxygen of return values
1311 * hash: fix key slot size accuracy
1312 * hash: fix multiwriter lock memory allocation
1313 * kni: fix build on RHEL 7.5
1314 * kni: fix build with gcc 8.1
1315 * kni: fix crash with null name
1316 * maintainers: claim maintainership for ARM v7 and v8
1317 * maintainers: update for Mellanox PMDs
1318 * mbuf: fix typo in IPv6 macro comment
1319 * mk: fix permissions when using make install
1320 * net/bnx2x: fix FW command timeout during stop
1321 * net/bnxt: check access denied for HWRM commands
1322 * net/bnxt: fix close operation
1323 * net/bnxt: fix HW Tx checksum offload check
1324 * net/bnxt: fix incorrect IO address handling in Tx
1325 * net/bnxt: fix RETA size
1326 * net/bnxt: fix Rx ring count limitation
1327 * net/bnxt: fix Tx with multiple mbuf
1328 * net/bonding: do not clear active slave count
1329 * net/bonding: fix MAC address reset
1330 * net/bonding: fix race condition
1331 * net/cxgbe/base: update flash part information
1332 * net/cxgbe: fix init failure due to new flash parts
1333 * net/ena: change memory type
1334 * net/ena: check pointer before memset
1335 * net/ena: fix GENMASK_ULL macro
1336 * net/ena: fix SIGFPE with 0 Rx queue
1337 * net/ena: set link speed as none
1338 * net/enic: do not overwrite admin Tx queue limit
1339 * net/i40e: do not reset device info data
1340 * net/i40e: fix check of flow director programming status
1341 * net/i40e: fix link speed
1342 * net/i40e: fix shifts of 32-bit value
1343 * net/i40e: revert fix of flow director check
1344 * net/i40e: workaround performance degradation
1345 * net/ixgbe: fix mask bits register set error for FDIR
1346 * net/ixgbe: fix tunnel id format error for FDIR
1347 * net/ixgbe: fix tunnel type set error for FDIR
1348 * net/nfp: fix field initialization in Tx descriptor
1349 * net/null: add MAC address setting fake operation
1350 * net/pcap: fix multiple queues
1351 * net/qede/base: fix GRC attention callback
1352 * net/qede: fix default extended VLAN offload config
1353 * net/qede: fix MAC address removal failure message
1354 * net: rename u16 to fix shadowed declaration
1355 * net/thunderx: avoid sq door bell write on zero packet
1356 * net/thunderx: fix build with gcc optimization on
1357 * Revert "net/i40e: fix packet count for PF"
1358 * test/bonding: assign non-zero MAC to null devices
1359 * test/crypto: fix device id when stopping port
1360 * test: fix EAL flags autotest on FreeBSD
1361 * test: fix uninitialized port configuration
1362 * test/hash: fix multiwriter with non consecutive cores
1363 * test/hash: fix potential memory leak
1364 * test/virtual_pmd: add MAC address setting fake op
1365 * vhost: fix missing increment of log cache count
1366
1367 16.11.9
1368 ~~~~~~~
1369
1370 * acl: forbid rule with priority zero
1371 * app/testpmd: fix csum parse-tunnel command invocation
1372 * app/testpmd: fix displaying RSS hash functions
1373 * app/testpmd: fix duplicate exit
1374 * app/testpmd: fix L4 length for UDP checksum
1375 * app/testpmd: optimize mbuf pool allocation
1376 * build: enable ARM NEON flag when __aarch64__ defined
1377 * bus/pci: fix allocation of device path
1378 * config: enable more than 128 cores for arm64
1379 * config: make AVX and AVX512 configurable
1380 * doc: add VFIO in ENA guide
1381 * doc: fix formatting in IP reassembly app guide
1382 * doc: fix NUMA library name in Linux guide
1383 * doc: fix typo in testpmd guide
1384 * doc: fix wrong usage of bind command
1385 * eal: fix build
1386 * eal: fix build with gcc 9.0
1387 * eal: fix build with -O1
1388 * eal: introduce rte version of fls
1389 * eal/linux: fix memory leak of logid
1390 * eal/linux: handle UIO read failure in interrupt handler
1391 * eal: use correct data type for bitmap slab operations
1392 * ethdev: fix doxygen comment to be with structure
1393 * ethdev: fix invalid configuration after failure
1394 * ethdev: fix queue start and stop
1395 * examples/ipv4_multicast: fix leak of cloned packets
1396 * examples/vhost: remove unnecessary constant
1397 * fix dpdk.org URLs
1398 * fix global variable issues
1399 * hash: fix key store element alignment
1400 * hash: remove unnecessary pause
1401 * igb_uio: fix unexpected removal for hot-unplug
1402 * igb_uio: issue FLR during open and release of device file
1403 * igb_uio: remove device reset in open
1404 * igb_uio: remove device reset in release
1405 * ip_frag: check fragment length of incoming packet
1406 * ip_frag: fix overflow in key comparison
1407 * ip_frag: use key length for key comparison
1408 * kni: fix build on CentOS 7.4
1409 * kni: fix build on Linux < 3.14
1410 * kni: fix build on Linux 4.19
1411 * kni: fix build on Suse 12 SP3
1412 * kni: fix kernel FIFO synchronization
1413 * kni: fix possible uninitialized variable
1414 * kni: fix SLE version detection
1415 * kvargs: fix processing a null list
1416 * mk: disable gcc AVX512F support
1417 * net/bnx2x: fix call to link handling periodic function
1418 * net/bnx2x: fix logging to include device name
1419 * net/bnx2x: fix to add PHY lock
1420 * net/bnx2x: fix to disable further interrupts
1421 * net/bnx2x: fix VF link state update
1422 * net/bnxt: fix uninitialized pointer access in Tx
1423 * net/bnxt: reduce polling interval for valid bit
1424 * net/bnxt: remove excess log messages
1425 * net/bnxt: set a VNIC as default only once
1426 * net/bnxt: set MAC filtering as outer for non tunnel frames
1427 * net/bonding: do not ignore RSS key on device config
1428 * net/bonding: fix crash when stopping mode 4 port
1429 * net/bonding: fix Rx slave fairness
1430 * net/bonding: reduce slave starvation on Rx poll
1431 * net/bonding: stop and deactivate slaves on stop
1432 * net/bonding: support matching QinQ ethertype
1433 * net/bonding: use evenly distributed default RSS RETA
1434 * net/e1000/base: fix uninitialized variable
1435 * net/e1000: do not error out if Rx drop enable is set
1436 * net/ena: fix passing RSS hash to mbuf
1437 * net/enic: add dependency on librte_kvargs
1438 * net/enic: add devarg to specify ingress VLAN rewrite mode
1439 * net/enic: do not use non-standard integer types
1440 * net/enic: set Rx VLAN offload flag for non-stripped packets
1441 * net: fix build with pedantic
1442 * net/i40e/base: correct global reset timeout calculation
1443 * net/i40e/base: fix partition id calculation for X722
1444 * net/i40e/base: gracefully clean the resources
1445 * net/i40e/base: properly clean resources
1446 * net/i40e: enable loopback function for X722 MAC
1447 * net/i40e: fix send admin queue command before init
1448 * net/i40e: fix X710 Rx after reading some registers
1449 * net/i40e: keep promiscuous on if allmulticast is enabled
1450 * net/i40e: update Tx offload mask
1451 * net/igb: update Tx offload mask
1452 * net/ixgbe: fix maximum wait time in comment
1453 * net/ixgbe: fix TDH register write
1454 * net/ixgbe: update Tx offload mask
1455 * net/ixgbevf: fix link state
1456 * net/ixgbe: wait longer for link after fiber MAC setup
1457 * net/mlx5: fix build on PPC64
1458 * net/nfp: fix live MAC changes not supported
1459 * net/nfp: fix mbuf flags with checksum good
1460 * net/nfp: fix RSS
1461 * net/thunderx: fix Tx desc corruption in scatter-gather mode
1462 * net/vhost: fix parameters string
1463 * net/virtio: add missing supported features
1464 * net/virtio: register/unregister intr handler on start/stop
1465 * net/virtio-user: do not reset owner when driver resets
1466 * net/virtio-user: fix typo in error message
1467 * pci: fix parsing of address without function number
1468 * test/crypto: fix number of queue pairs
1469 * test/hash: fix bucket size in perf test
1470 * test/hash: fix build
1471 * test/kni: check module dependency
1472 * test/reorder: fix out of bound access
1473 * usertools: check for lspci dependency
1474 * version: 16.11.9-rc1
1475 * version: 16.11.9-rc2
1476 * vfio: fix build
1477 * vfio: fix build on old kernel
1478 * vhost: fix corner case for enqueue operation
1479 * vhost: fix payload size of reply
1480 * vhost: remove unneeded null pointer check
1481 * vhost-user: drop connection on message handling failures
1482 * vhost-user: fix false negative in handling user messages