-+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | VM power manager may not work on systems with more than 64 cores |
-| | |
-+================================+======================================================================================+
-| Description | When using VM power manager on a system with more than 64 cores, |
-| | VM(s) should not use cores 64 or higher. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | VM power manager should not be used with VM(s) that are using cores 64 or above. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution/ Workaround | Do not use cores 64 or above. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | Platforms with more than 64 cores. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | VM power manager application |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
+**Description**:
+ When using VM power manager on a system with more than 64 cores, VM(s) should not use cores 64 or higher.
+
+**Implication**:
+ VM power manager should not be used with VM(s) that are using cores 64 or above.
+
+**Resolution/Workaround**:
+ Do not use cores 64 or above.
+
+**Affected Environment/Platform**:
+ Platforms with more than 64 cores.
+
+**Driver/Module**:
+ VM power manager application.
+
+
+DPDK may not build on some Intel CPUs using clang < 3.7.0
+---------------------------------------------------------
+
+**Description**:
+ When compiling DPDK with an earlier version than 3.7.0 of clang, CPU flags are not detected on some Intel platforms
+ such as Intel Broadwell/Skylake (and possibly future CPUs), and therefore compilation fails due to missing intrinsics.
+
+**Implication**:
+ DPDK will not build when using a clang version < 3.7.0.
+
+**Resolution/Workaround**:
+ Use clang 3.7.0 or higher, or gcc.
+
+**Affected Environment/Platform**:
+ Platforms with Intel Broadwell/Skylake using an old clang version.
+
+**Driver/Module**:
+ Environment Abstraction Layer (EAL).
+
+
+The last EAL argument is replaced by the program name in argv[]
+---------------------------------------------------------------
+
+**Description**:
+ The last EAL argument is replaced by program name in ``argv[]`` after ``eal_parse_args`` is called.
+ This is the intended behavior but it causes the pointer to the last EAL argument to be lost.
+
+**Implication**:
+ If the last EAL argument in ``argv[]`` is generated by a malloc function, changing it will cause memory
+ issues when freeing the argument.
+
+**Resolution/Workaround**:
+ An application should not consider the value in ``argv[]`` as unchanged.
+
+**Affected Environment/Platform**:
+ ALL.
+
+**Driver/Module**:
+ Environment Abstraction Layer (EAL).
+
+
+I40e VF may not receive packets in the promiscuous mode
+-------------------------------------------------------
+
+**Description**:
+ Promiscuous mode is not supported by the DPDK i40e VF driver when using the
+ i40e Linux kernel driver as host driver.
+
+**Implication**:
+ The i40e VF does not receive packets when the destination MAC address is unknown.
+
+**Resolution/Workaround**:
+ Use a explicit destination MAC address that matches the VF.
+
+**Affected Environment/Platform**:
+ All.
+
+**Driver/Module**:
+ Poll Mode Driver (PMD).
+
+
+uio pci generic module bind failed in X710/XL710/XXV710
+-------------------------------------------------------
+
+**Description**:
+ The ``uio_pci_generic`` module is not supported by XL710, since the errata of XL710
+ states that the Interrupt Status bit is not implemented. The errata is the item #71
+ from the `xl710 controller spec
+ <http://www.intel.com/content/www/us/en/embedded/products/networking/xl710-10-40-controller-spec-update.html>`_.
+ The hw limitation is the same as other X710/XXV710 NICs.
+
+**Implication**:
+ When use ``--bind=uio_pci_generic``, the ``uio_pci_generic`` module probes device and check the Interrupt
+ Status bit. Since it is not supported by X710/XL710/XXV710, it return a *failed* value. The statement
+ that these products don’t support INTx masking, is indicated in the related `linux kernel commit
+ <https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/drivers/pci/quirks.c?id=8bcf4525c5d43306c5fd07e132bc8650e3491aec>`_.
+
+**Resolution/Workaround**:
+ Do not bind the ``uio_pci_generic`` module in X710/XL710/XXV710 NICs.
+
+**Affected Environment/Platform**:
+ All.
+
+**Driver/Module**:
+ Poll Mode Driver (PMD).
+
+
+virtio tx_burst() function cannot do TSO on shared packets
+----------------------------------------------------------
+
+**Description**:
+ The standard TX function of virtio driver does not manage shared
+ packets properly when doing TSO. These packets should be read-only
+ but the driver modifies them.
+
+ When doing TSO, the virtio standard expects that the L4 checksum is
+ set to the pseudo header checksum in the packet data, which is
+ different than the DPDK API. The driver patches the L4 checksum to
+ conform to the virtio standard, but this solution is invalid when
+ dealing with shared packets (clones), because the packet data should
+ not be modified.
+
+**Implication**:
+ In this situation, the shared data will be modified by the driver,
+ potentially causing race conditions with the other users of the mbuf
+ data.
+
+**Resolution/Workaround**:
+ The workaround in the application is to ensure that the network
+ headers in the packet data are not shared.
+
+**Affected Environment/Platform**:
+ Virtual machines running a virtio driver.
+
+**Driver/Module**:
+ Poll Mode Driver (PMD).