net/virtio-user: fix inconsistent name
[dpdk.git] / doc / guides / rel_notes / release_16_07.rst
index 1fab04f..0740d4f 100644 (file)
@@ -38,6 +38,12 @@ New Features
 
   The size of the mempool structure is reduced if the per-lcore cache is disabled.
 
+* **Added mempool external cache for non-EAL thread.**
+
+   Added new functions to create, free or flush a user-owned mempool
+   cache for non-EAL threads. Previously, cache was always disabled
+   on these threads.
+
 * **Changed the memory allocation in mempool library.**
 
   * Added ability to allocate a large mempool in virtually fragmented memory.
@@ -47,10 +53,54 @@ New Features
   * Dropped specific Xen Dom0 code.
   * Dropped specific anonymous mempool code in testpmd.
 
+* **Added new driver for Broadcom NetXtreme-C devices.**
+
+  Added the new bnxt driver for Broadcom NetXtreme-C devices. See the
+  "Network Interface Controller Drivers" document for more details on this
+  new driver.
+
+* **Added new driver for ThunderX nicvf device.**
+
+* **Added mailbox interrupt support for ixgbe and igb VFs.**
+
+  When the physical NIC link comes down or up, the PF driver will send a
+  mailbox message to notify each VF. To handle this link up/down event,
+  add mailbox interrupts support to receive the message and allow the app to
+  register a callback for it.
+
+* **Updated the ixgbe base driver.**
+
+  The ixgbe base driver was updated with changes including the
+  following:
+
+  * Added sgmii link for X550.
+  * Added mac link setup for X550a SFP and SFP+.
+  * Added KR support for X550em_a.
+  * Added new phy definitions for M88E1500.
+  * Added support for the VLVF to be bypassed when adding/removing a VFTA entry.
+  * Added X550a flow control auto negotiation support.
+
+* **Updated the i40e base driver.**
+
+  Updated the i40e base driver, which includes support for new devices IDs.
+
 * **Supported virtio on IBM POWER8.**
 
   The ioports are mapped in memory when using Linux UIO.
 
+* **Virtio support for containers.**
+
+  Add a new virtual device, named virtio_user, to support virtio for containers.
+
+  Known limitations:
+
+  * Control queue and multi-queue are not supported yet.
+  * Cannot work with --huge-unlink.
+  * Cannot work with --no-huge.
+  * Cannot work when there are more than VHOST_MEMORY_MAX_NREGIONS(8) hugepages.
+  * Root privilege is a must for sorting hugepages by physical address.
+  * Can only be used with vhost user backend.
+
 * **Added vhost-user client mode.**
 
   DPDK vhost-user could be the server as well as the client. It supports
@@ -63,6 +113,15 @@ New Features
   that a brand new QEMU version (v2.7 or above) is needed, otherwise, the
   reconnect won't work.
 
+  DPDK vhost-user will also try to reconnect by default when
+
+  * the first connect fails (when QEMU is not started yet)
+  * the connection is broken (when QEMU restarts)
+
+  It can be turned off if flag ``RTE_VHOST_USER_NO_RECONNECT`` is set.
+
+* **Added NSH packet recognition in i40e.**
+
 * **Added AES-CTR support to AESNI MB PMD.**
 
   Now AESNI MB PMD supports 128/192/256-bit counter mode AES encryption and
@@ -78,6 +137,18 @@ New Features
   A new Crypto PMD has been added, which provides KASUMI F8 (UEA1) ciphering
   and KASUMI F9 (UIA1) hashing.
 
+* **Added multi-writer support for RTE Hash with Intel TSX.**
+
+  The following features/modifications have been added to rte_hash library:
+
+  * Enabled application developers to use an extra flag for rte_hash creation
+    to specify default behavior (multi-thread safe/unsafe) with rte_hash_add_key
+    function.
+  * Changed Cuckoo search algorithm to breadth first search for multi-writer
+    routine and split Cuckoo Search and Move operations in order to reduce
+    transactional code region and improve TSX performance.
+  * Added a hash multi-writer test case for test app.
+
 * **Improved IP Pipeline Application.**
 
   The following features have been added to ip_pipeline application:
@@ -99,6 +170,16 @@ New Features
   * A new ``app/pdump`` tool is added to capture packets in DPDK.
 
 
+* **Added floating VEB support for i40e PF driver.**
+
+  A "floating VEB" is a special Virtual Ethernet Bridge (VEB) which does not
+  have an upload port, but instead is used for switching traffic between
+  virtual functions (VFs) on a port.
+
+  For information on this feature,  please see the "I40E Poll Mode Driver"
+  section of the "Network Interface Controller Drivers" document.
+
+
 Resolved Issues
 ---------------
 
@@ -114,6 +195,21 @@ Resolved Issues
 EAL
 ~~~
 
+* **igb_uio: Fixed possible mmap failure for Linux >= 4.5.**
+
+  mmaping the iomem range of the PCI device fails for kernels that
+  enabled CONFIG_IO_STRICT_DEVMEM option:
+
+  EAL: pci_map_resource():
+           cannot mmap(39, 0x7f1c51800000, 0x100000, 0x0):
+           Invalid argument (0xffffffffffffffff)
+
+  CONFIG_IO_STRICT_DEVMEM is introduced in Linux v4.5
+
+  Updated igb_uio to stop reserving PCI memory resources, from
+  kernel point of view iomem region looks like idle and mmap worked
+  again. This matches uio_pci_generic usage.
+
 
 Drivers
 ~~~~~~~
@@ -125,6 +221,13 @@ Drivers
   info to descriptor.
   Now this issue is fixed by disabling vlan stripping from inner header.
 
+* **i40e: Fixed the type issue of a single VLAN type.**
+
+  Currently, if a single VLAN header is added in a packet, it's treated
+  as inner VLAN. But generally, a single VLAN header is treated as the
+  outer VLAN header.
+  This issue is fixed by changing corresponding register for single VLAN.
+
 
 Libraries
 ~~~~~~~~~
@@ -180,6 +283,12 @@ API Changes
   as the parameter have been changed due to the ABI refactoring mentioned
   below: it's replaced by ``int vid``.
 
+* The function ``rte_vhost_enqueue_burst`` no longer supports concurrent enqueuing
+  packets to the same queue.
+
+* The function ``rte_eth_dev_set_mtu`` adds a new return value ``-EBUSY``, which
+  indicates the operation is forbidden because the port is running.
+
 
 ABI Changes
 -----------
@@ -224,6 +333,7 @@ The libraries prepended with a plus sign were incremented in this version.
      librte_mbuf.so.2
    + librte_mempool.so.2
      librte_meter.so.1
+     librte_pdump.so.1
      librte_pipeline.so.3
      librte_pmd_bond.so.1
      librte_pmd_ring.so.2