Known Issues and Limitations
============================
-This section describes known issues with the Intel® DPDK software, Release 1.6.0.
-
-Pause Frame Forwarding does not work properly on igb
-----------------------------------------------------
-
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Pause Frame forwarding does not work properly on igb |
-| | |
-+================================+======================================================================================+
-| Reference # | IXA00384637 |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | For igb devices rte_eth_flow_ctrl_set is not working as expected. |
-| | Pause frames are always forwarded on igb, regardless of the RFCE, MPMCF and DPF |
-| | registers. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | Pause frames will never be rejected by the host on 1G NICs and they will always be |
-| | forwarded. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution/ Workaround | There is no workaround available. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | All |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | Poll Mode Driver (PMD) |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-
-Running TestPMD with SRIOV in Domain U may cause it to hang when XENVIRT switch is on
--------------------------------------------------------------------------------------
+This section describes known issues with the DPDK software.
+Unit Test for Link Bonding may fail at test_tlb_tx_burst()
+----------------------------------------------------------
+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Running TestPMD with SRIOV in Domain U may cause it to hang when XENVIRT switch is on|
+| Title | Unit Test for Link Bonding may fail at test_tlb_tx_burst() |
| | |
+================================+======================================================================================+
-| Reference # | IXA00168949 |
+| Reference # | IXA00390304 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | When TestPMD is run with only SRIOV port “./testpmd -c f -n 4 -- -i” , the following |
-| | error occurs: |
-| | |
-| | PMD: gntalloc: ioctl error |
-| | |
-| | EAL: Error - exiting with code: 1 |
-| | |
-| | Cause: Creation of mbuf pool for socket 0 failed |
-| | |
-| | Then, alternately run SRIOV port and virtIO with testpmd: |
-| | |
-| | testpmd -c f -n 4 -- -i |
-| | |
-| | testpmd -c f -n 4 --use-dev="eth_xenvirt0" -- -i |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | DomU will not be accessible after you repeat this action some times |
+| Description | Unit tests will fail at test_tlb_tx_burst function with error for uneven distribution|
+| | of packets. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution/ Workaround | Run testpmd with a "--total-num-mbufs=N(N<=3500)" |
+| Implication | Unit test link_bonding_autotest will fail |
| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | Fedora 16, 64 bits + Xen hypervisor 4.2.3 + Domain 0 kernel 3.10.0 |
-| | +Domain U kernel 3.6.11 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | TestPMD Sample Application |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-
-Vhost-xen cannot detect Domain U application exit on Xen version 4.0.1
-----------------------------------------------------------------------
-
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Vhost-xen cannot detect Domain U application exit on Xen 4.0.1. |
-| | |
-+================================+======================================================================================+
-| Reference # | IXA00168947 |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | When using Intel® DPDK applications on Xen 4.0.1, e.g. TestPMD Sample Application, |
-| | on killing the application (e.g. killall testmd) vhost-switch cannot detect |
-| | the domain U exited and does not free the Virtio device. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | Virtio device not freed after application is killed when using vhost-switch on Xen |
-| | 4.0.1 |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution | |
+| Resolution/ Workaround | There is no workaround available. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | Xen 4.0.1 |
+| Affected Environment/ Platform | Fedora 20 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | Vhost-switch |
+| Driver/Module | Link Bonding |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Virtio incorrect header length used if MSI-X is disabled by kernel driver
--------------------------------------------------------------------------
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Virtio incorrect header length used if MSI-X is disabled by kernel driver or |
-| | if VIRTIO_NET_F_MAC is not negotiated. |
-| | |
-+================================+======================================================================================+
-| Reference # | IXA00384256 |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | The Virtio header for host-guest communication is of variable length and |
-| | is dependent on whether MSI-X has been enabled by the kernel driver for the network |
-| | device. |
-| | |
-| | The base header length of 20 bytes will be extended by 4 bytes to accommodate MSI-X |
-| | vectors and the Virtio Network Device header will appear at byte offset 24. |
-| | |
-| | The Userspace Virtio Poll Mode Driver tests the guest feature bits for the presence |
-| | of VIRTIO_PCI_FLAG_MISIX, however this bit field is not part of the Virtio |
-| | specification and resolves to the VIRTIO_NET_F_MAC feature instead. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | The Intel® DPDK kernel driver will enable MSI-X by default, |
-| | however if loaded with “intr_mode=legacy” on a guest with a Virtio Network Device, |
-| | a KVM-Qemu guest may crash with the following error: “virtio-net header not in first |
-| | element”. |
-| | |
-| | If VIRTIO_NET_F_MAC feature has not been negotiated, then the Userspace Poll Mode |
-| | Driver will assume that MSI-X has been disabled and will prevent the proper |
-| | functioning of the driver. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution | Ensure #define VIRTIO_PCI_CONFIG(hw) returns the correct offset (20 or 24 bytes) for |
-| | the devices where in rare cases MSI-X is disabled or VIRTIO_NET_F_MAC has not been |
-| | negotiated. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | Virtio devices where MSI-X is disabled or VIRTIO_NET_F_MAC feature has not been |
-| | negotiated. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | librte_pmd_virtio |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-
-gmake clean may silently fail for some example applications
------------------------------------------------------------
+Pause Frame Forwarding does not work properly on igb
+----------------------------------------------------
+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | When using Free BSD* 9.2 gmake clean may silently fail for some sample applications |
+| Title | Pause Frame forwarding does not work properly on igb |
| | |
+================================+======================================================================================+
-| Reference # | IXA00834605 |
+| Reference # | IXA00384637 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | gmake clean may silently fail leaving the source object files intact. |
+| Description | For igb devices rte_eth_flow_ctrl_set is not working as expected. |
+| | Pause frames are always forwarded on igb, regardless of the RFCE, MPMCF and DPF |
+| | registers. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | Application object files are not removed. |
+| Implication | Pause frames will never be rejected by the host on 1G NICs and they will always be |
+| | forwarded. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution | Manually remove ./build folders or rebuild application source after editing. |
+| Resolution/ Workaround | There is no workaround available. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | FreeBSD* 9.2 and below |
+| Affected Environment/ Platform | All |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | Example Applications |
+| Driver/Module | Poll Mode Driver (PMD) |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| | |
| | The NIC device identifiers used during testing: |
| | |
+| | * Intel® Ethernet Controller XL710 for 40GbE QSFP+ [8086:1584] |
+| | |
+| | * Intel® Ethernet Controller XL710 for 40GbE QSFP+ [8086:1583] |
+| | |
+| | * Intel® Ethernet Controller X710 for 10GbE SFP+ [8086:1572] |
+| | |
| | * Intel® 82576 Gigabit Ethernet Controller [8086:10c9] |
| | |
| | * Intel® 82576 Quad Copper Gigabit Ethernet Controller [8086:10e8] |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Unstable system performance across application executions with 2MB pages
-------------------------------------------------------------------------
-
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Unstable system performance across application executions with 2MB pages |
-| | |
-+================================+======================================================================================+
-| Reference # | IXA00372346 |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | The performance of an Intel® DPDK application may vary across executions of an |
-| | application due to a varying number of TLB misses depending on the location of |
-| | accessed structures in memory. |
-| | This situation occurs on rare occasions. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | Occasionally, relatively poor performance of Intel® DPDK applications is encountered.|
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution/ Workaround | Using 1 GB pages results in lower usage of TLB entries, resolving this issue. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | Systems using 2 MB pages |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | All |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-
Packets are not sent by the 1 GbE/10 GbE SR-IOV driver when the source MAC address is not the MAC address assigned to the VF NIC
--------------------------------------------------------------------------------------------------------------------------------
| Reference # | IXA00373461 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | Currently, the Intel® DPDK does not store any information about memory allocated by |
+| Description | Currently, the DPDK does not store any information about memory allocated by |
| | malloc() (for example, NUMA node, physical address), hence PMD drivers do not work |
| | when the --no-huge command line parameter is supplied to EAL. |
| | |
| Resolution/ Workaround | Use huge page memory or use VFIO to map devices. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | Systems running the Intel® DPDK on Linux |
+| Affected Environment/ Platform | Systems running the DPDK on Linux |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Driver/Module | Poll Mode Driver (PMD) |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Implication | Any configuration for these items in the VF register will be ignored. The behavior |
-| | is dependant on the current PF setting. |
+| | is dependent on the current PF setting. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Resolution/ Workaround | For the PF (Physical Function) status on which the VF driver depends, there is an |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Link status change not working with MSI interrupts
---------------------------------------------------
-
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Link status change not working with MSI interrupts |
-| | |
-+================================+======================================================================================+
-| Reference # | IXA00378191 |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | MSI interrupts are not supported by the PMD. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | Link status change will only work with legacy or MSI-X interrupts. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution/ Workaround | The igb_uio driver can now be loaded with either legacy or MSI-X interrupt support. |
-| | However, this configuration is not tested. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | All |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | Poll Mode Driver (PMD) |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-
Twinpond and Ironpond NICs do not report link status correctly
--------------------------------------------------------------
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Error reported opening files on Intel® DPDK initialization
-----------------------------------------------------------
+Error reported opening files on DPDK initialization
+---------------------------------------------------
+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Error reported opening files on Intel® DPDK initialization |
+| Title | Error reported opening files on DPDK initialization |
| | |
+================================+======================================================================================+
| Reference # | 91 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | On Intel® DPDK application startup, errors may be reported when opening files as |
+| Description | On DPDK application startup, errors may be reported when opening files as |
| | part of the initialization process. This occurs if a large number, for example, 500 |
| | or more, or if hugepages are used, due to the per-process limit on the number of |
| | open files. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | The Intel® DPDK application may fail to run. |
+| Implication | The DPDK application may fail to run. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Resolution/ Workaround | If using 2 MB hugepages, consider switching to a fewer number of 1 GB pages. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Link status interrupt not working in VF drivers
------------------------------------------------
-
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Link status interrupts not working in the VF drivers |
-| | |
-+================================+======================================================================================+
-| Reference | IXA00381312 |
-| # | |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | Due to the driver not setting up interrupts for VF drivers, the NIC does not report |
-| | link status change to VF devices. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | Link status interrupts will not work in VM guests. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution/ Workaround | There is no workaround available. |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | All |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | VF (SR-IOV) Poll Mode Driver (PMD) |
-| | |
-+--------------------------------+--------------------------------------------------------------------------------------+
-
Binding PCI devices to igb_uio fails on Linux* kernel 3.9 when more than one device is used
-------------------------------------------------------------------------------------------
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-GCC might generate Intel® AVX instructions forprocessors without Intel® AVX support
------------------------------------------------------------------------------------
+GCC might generate Intel® AVX instructions for processors without Intel® AVX support
+------------------------------------------------------------------------------------
+--------------------------------+--------------------------------------------------------------------------------------+
| Title | Gcc might generate Intel® AVX instructions for processors without Intel® AVX support |
| Reference # | IXA00382439 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | When compiling Intel® DPDK (and any Intel® DPDK app), gcc may generate Intel® AVX |
+| Description | When compiling Intel® DPDK (and any DPDK app), gcc may generate Intel® AVX |
| | instructions, even when the processor does not support Intel® AVX. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | Any Intel® DPDK app might crash while starting up. |
+| Implication | Any DPDK app might crash while starting up. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Resolution/ Workaround | Either compile using icc or set EXTRA_CFLAGS=’-O3’ prior to compilation. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Double VLAN does not work on Intel® 40G ethernet controller
------------------------------------------------------------
+Cannot set link speed on Intel® 40G Ethernet controller
+-------------------------------------------------------
+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Double VLAN does not work on Intel® 40G ethernet controller |
+| Title | Cannot set link speed on Intel® 40G Ethernet controller |
| | |
+================================+======================================================================================+
-| Reference # | IXA00386480 |
+| Reference # | IXA00386379 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Description | On Intel® 40G Ethernet Controller: |
| | |
-| | Double VLAN does not work. This was confirmed a firmware issue which will be fixed |
-| | in later versions of firmware. |
+| | It cannot set the link to specific speed. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | After setting double vlan to be enabled on a port, no packets can be transmitted out |
-| | on that port. |
+| Implication | The link speed cannot be changed forcibly, though it can be configured by |
+| | application. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Resolution/ Workaround | None |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Cannot set link speed on Intel® 40G ethernet controller
--------------------------------------------------------
+Stopping the port does not down the link on Intel® 40G Ethernet controller
+--------------------------------------------------------------------------
+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Cannot set link speed on Intel® 40G ethernet controller |
+| Title | Stopping the port does not down the link on Intel® 40G Ethernet controller |
| | |
+================================+======================================================================================+
-| Reference # | IXA00386379 |
+| Reference # | IXA00386380 |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Description | On Intel® 40G Ethernet Controller: |
| | |
-| | It cannot set the link to specific speed. |
+| | Stopping the port does not really down the port link. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | The link speed cannot be changed forcedly, though it can be configured by |
-| | application. |
+| Implication | The port link will be still up after stopping the port. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
| Resolution/ Workaround | None |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-Stopping the port does not down the link on Intel® 40G ethernet controller
---------------------------------------------------------------------------
+Devices bound to igb_uio with VT-d enabled do not work on Linux* kernel 3.15-3.17
+---------------------------------------------------------------------------------
+--------------------------------+--------------------------------------------------------------------------------------+
-| Title | Stopping the port does not down the link on Intel® 40G ethernet controller |
-| | |
+| Title | Devices bound to igb_uio with VT-d enabled do not work on Linux* kernel 3.15-3.17 |
+================================+======================================================================================+
-| Reference # | IXA00386380 |
-| | |
+| Description | | When VT-d is enabled (iommu=pt intel_iommu=on), devices are 1:1 mapped. |
+| | In the Linux* kernel unbinding devices from drivers removes that mapping which |
+| | result in IOMMU errors. |
+| | | Introduced in Linux `kernel 3.15 commit <https://git.kernel.org/cgit/linux/kernel/ |
+| | git/torvalds/linux.git/commit/drivers/iommu/ |
+| | intel-iommu.c?id=816997d03bca9fabcee65f3481eb0297103eceb7>`_, |
+| | solved in Linux `kernel 3.18 commit <https://git.kernel.org/cgit/linux/kernel/git/ |
+| | torvalds/linux.git/commit/drivers/iommu/ |
+| | intel-iommu.c?id=1196c2fb0407683c2df92d3d09f9144d42830894>`_. |
++--------------------------------+--------------------------------------------------------------------------------------+
+| Implication | | Devices will not be allowed to access memory, resulting in following kernel errors:|
+| | | ``dmar: DRHD: handling fault status reg 2`` |
+| | | ``dmar: DMAR:[DMA Read] Request device [02:00.0] fault addr a0c58000`` |
+| | | ``DMAR:[fault reason 02] Present bit in context entry is clear`` |
++--------------------------------+--------------------------------------------------------------------------------------+
+| Resolution/ Workaround | | Use earlier or later kernel versions, or avoid driver binding on boot by |
+| | blacklisting the driver modules. |
+| | | ie. in the case of ixgbe, we can pass the kernel command line option: |
+| | | ``modprobe.blacklist=ixgbe`` |
+| | | This way we do not need to unbind the device to bind it to igb_uio. |
++--------------------------------+--------------------------------------------------------------------------------------+
+| Affected Environment/ Platform | Linux* systems with kernel versions 3.15 to 3.17 |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Description | On Intel® 40G Ethernet Controller: |
+| Driver/Module | igb_uio module |
++--------------------------------+--------------------------------------------------------------------------------------+
+
+VM power manager may not work on systems with more than 64 cores
+----------------------------------------------------------------
+
++--------------------------------+--------------------------------------------------------------------------------------+
+| Title | VM power manager may not work on systems with more than 64 cores |
| | |
-| | Stopping the port does not really down the port link. |
++================================+======================================================================================+
+| Description | When using VM power manager on a system with more than 64 cores, |
+| | VM(s) should not use cores 64 or higher. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Implication | The port link will be still up after stopping the port. |
+| Implication | VM power manager should not be used with VM(s) that are using cores 64 or above. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Resolution/ Workaround | None |
+| Resolution/ Workaround | Do not use cores 64 or above. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Affected Environment/ Platform | All |
+| Affected Environment/ Platform | Platforms with more than 64 cores. |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+
-| Driver/Module | Poll Mode Driver (PMD) |
+| Driver/Module | VM power manager application |
| | |
+--------------------------------+--------------------------------------------------------------------------------------+