Also, make sure to start the actual text at the margin.
=========================================================
+* **Added free Tx mbuf on demand API.**
+
+ Added a new function ``rte_eth_tx_done_cleanup()`` which allows an application
+ to request the driver to release mbufs from their Tx ring that are no longer
+ in use, independent of whether or not the ``tx_rs_thresh`` has been crossed.
+
+* **Added descriptor status ethdev API.**
+
+ Added a new API to get the status of a descriptor.
+
+ For Rx, it is almost similar to the ``rx_descriptor_done`` API, except
+ it differentiates descriptors which are hold by the driver and not
+ returned to the hardware. For Tx, it is a new API.
+
+* **Increased number of next hops for LPM IPv6 to 2^21.**
+
+ The next_hop field is extended from 8 bits to 21 bits for IPv6.
+
+* **Added VFIO hotplug support.**
+
+ How hotplug supported with UIO and VFIO drivers.
+
+* **Added powerpc support in pci probing for vfio-pci devices.**
+
+ sPAPR IOMMU based pci probing enabled for vfio-pci devices.
+
+* **Kept consistent PMD batching behaviour.**
+
+ Removed the limit of fm10k/i40e/ixgbe TX burst size and vhost RX/TX burst size
+ in order to support the same policy of "make an best effort to RX/TX pkts"
+ for PMDs.
+
+* **Updated the ixgbe base driver.**
+
+ Updated the ixgbe base driver, including the following changes:
+
+ * Add link block check for KR.
+ * Complete HW initialization even if SFP is not present.
+ * Add VF xcast promiscuous mode.
+
+* **Added powerpc support for i40e and its vector PMD .**
+
+ i40e PMD and its vector PMD enabled by default in powerpc.
+
+* **Added VF max bandwidth setting on i40e.**
+
+ i40e HW supports to set the max bandwidth for a VF. Enable this capability.
+
+* **Added VF TC min bandwidth setting on i40e.**
+
+ i40e HW supports to set the allocated bandwidth for a TC on a VF. Enable this
+ capability.
+
+* **Added VF TC max bandwidth setting on i40e.**
+
+ i40e HW supports to set the max bandwidth for a TC on a VF. Enable this
+ capability.
+
+* **Added TC strict priority mode setting on i40e.**
+
+ There're 2 TX scheduling modes supported for TCs by i40e HW, round ribon mode
+ and strict priority mode. By default it's round robin mode. Enable the
+ capability to change the TX scheduling mode for a TC. It's a global setting
+ on a physical port.
+
+* **Added i40e dynamic device personalization support.**
+
+ * Added dynamic device personalization processing to i40e FW.
+
+* **Added TSO support for tunneled and non-tunneled packets on mlx5 driver.**
+
+ Added support for Hardware TSO for tunneled and non-tunneled packets.
+ Tunneling protocols supported are GRE and VXLAN.
+
+* **Added support for Rx interrupts on mlx5 driver.**
+
+ Rx queues can be armed with an interrupt which will trigger on the
+ next packet arrival.
+
+* **Updated the sfc_efx driver.**
+
+ * Generic flow API support for Ethernet, VLAN, IPv4, IPv6, UDP and TCP
+ pattern items with QUEUE action for ingress traffic.
+
+ * Support virtual functions (VFs)
+
+* **Added LiquidIO network PMD.**
+
+ Added poll mode driver support for Cavium LiquidIO II server adapter VFs.
+
+* **Added support for the Wind River Systems AVP PMD.**
+
+ Added a new networking driver for the AVP device type. Theses devices are
+ specific to the Wind River Systems virtualization platforms.
+
+* **Added vmxnet3 version 3 support.**
+
+ Added support for vmxnet3 version 3 which includes several
+ performance enhancements viz. configurable TX data ring, Receive
+ Data Ring, ability to register memory regions.
+
+* **Updated the tap driver.**
+
+ * Support MTU modification.
+ * Support packet type for Rx.
+ * Support segmented packets on Rx and Tx.
+ * Speed up Rx on tap when no packets are available.
+ * Support capturing traffic from another netdevice.
+ * Dynamically change link status when the underlying interface state changes.
+ * Generic flow API support for Ethernet, VLAN, IPv4, IPv6, UDP and TCP pattern
+ items with DROP, QUEUE and PASSTHRU actions for ingress traffic.
+
+* **Added MTU feature support to Virtio and Vhost.**
+
+ Implemented new Virtio MTU feature into Vhost and Virtio:
+
+ * Add ``rte_vhost_mtu_get()`` API to Vhost library.
+ * Enable Vhost PMD's MTU get feature.
+ * Get max MTU value from host in Virtio PMD
+
+* **Added interrupt mode support for virtio-user.**
+
+ Implemented Rxq interrupt mode and LSC support for virtio-user as a virtual
+ device. Supported cases:
+
+ * Rxq interrupt for virtio-user + vhost-user as the backend.
+ * Rxq interrupt for virtio-user + vhost-kernel as the backend.
+ * LSC interrupt for virtio-user + vhost-user as the backend.
+
Resolved Issues
---------------
Also, make sure to start the actual text at the margin.
=========================================================
+* **LSC interrupt cannot work for virtio-user + vhost-kernel.**
+
+ LSC interrupt cannot be detected when setting the backend, tap device,
+ up/down as we fail to find a way to monitor such event.
+
API Changes
-----------
Also, make sure to start the actual text at the margin.
=========================================================
+* The LPM ``next_hop`` field is extended from 8 bits to 21 bits for IPv6
+ while keeping ABI compatibility.
+
+* **Reworked rte_ring library**
+
+ The rte_ring library has been reworked and updated. The following changes
+ have been made to it:
+
+ * removed the build-time setting ``CONFIG_RTE_RING_SPLIT_PROD_CONS``
+ * removed the build-time setting ``CONFIG_RTE_LIBRTE_RING_DEBUG``
+ * removed the build-time setting ``CONFIG_RTE_RING_PAUSE_REP_COUNT``
+ * removed the function ``rte_ring_set_water_mark`` as part of a general
+ removal of watermarks support in the library.
+ * added an extra parameter to the burst/bulk enqueue functions to
+ return the number of free spaces in the ring after enqueue. This can
+ be used by an application to implement its own watermark functionality.
+ * added an extra parameter to the burst/bulk dequeue functions to return
+ the number elements remaining in the ring after dequeue.
+ * changed the return value of the enqueue and dequeue bulk functions to
+ match that of the burst equivalents. In all cases, ring functions which
+ operate on multiple packets now return the number of elements enqueued
+ or dequeued, as appropriate. The updated functions are:
+
+ - ``rte_ring_mp_enqueue_bulk``
+ - ``rte_ring_sp_enqueue_bulk``
+ - ``rte_ring_enqueue_bulk``
+ - ``rte_ring_mc_dequeue_bulk``
+ - ``rte_ring_sc_dequeue_bulk``
+ - ``rte_ring_dequeue_bulk``
+
+ NOTE: the above functions all have different parameters as well as
+ different return values, due to the other listed changes above. This
+ means that all instances of the functions in existing code will be
+ flagged by the compiler. The return value usage should be checked
+ while fixing the compiler error due to the extra parameter.
ABI Changes
-----------
Also, make sure to start the actual text at the margin.
=========================================================
+* KNI vhost support removed.
+
Shared Library Versions
-----------------------