7. Resolved Issues

This section describes previously known issues that have been resolved since release version 1.2.

7.1. Running TestPMD with SRIOV in Domain U may cause it to hang when XENVIRT switch is on

Title Running TestPMD with SRIOV in Domain U may cause it to hang when XENVIRT switch is on
Reference # IXA00168949
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
Resolution/ Workaround Run testpmd with a “–total-num-mbufs=N(N<=3500)”
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

7.2. 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 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 Resolved in DPDK 1.8
Affected Environment/ Platform Xen 4.0.1
Driver/Module Vhost-switch

7.3. 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 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

7.4. 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 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 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

7.6. KNI does not provide Ethtool support for all NICs supported by the Poll-Mode Drivers

Title KNI does not provide ethtool support for all NICs supported by the Poll Mode Drivers
Refererence # IXA00383835
Description

To support ethtool functionality using the KNI, the KNI libray includes seperate driver code based off the Linux kernel drivers, because this driver code is seperate from the poll-mode drivers, the set of supported NICs for these two components may differ.

Because of this, in this release, the KNI driver does not provide “ethtool” support for the Intel® Ethernet Connection I354 on the Intel Atom Processor C2000 product Family SoCs.

Implication Ethtool support with KNI will not work for NICs such as the Intel® Ethernet Connection I354. Other KNI functionality, such as injecting packets into the Linux kernel is unaffected.
Resolution/Workaround Updated for Intel® Ethernet Connection I354.
Affected Environment/Platform Platforms using the Intel® Ethernet Connection I354 or other NICs unsupported by KNI ethtool
Driver/Module KNI

7.7. Linux IPv4 forwarding is not stable with vhost-switch on high packet rate

Title Linux IPv4 forwarding is not stable with vhost-switch on high packet rate.
Refererence # IXA00384430
Description Linux IPv4 forwarding is not stable in Guest when Tx traffic is high from traffic generator using two virtio devices in VM with 10G in host.
Implication Packets cannot be forwarded by user space vhost-switch and Linux IPv4 forwarding if the rate of incoming packets is greater than 1 Mpps.
Resolution/Workaround N/A
AffectedEnvironment/Platform All
Driver/Module Sample application

7.8. PCAP library overwrites mbuf data before data is used

Title PCAP library overwrites mbuf data before data is used
Reference # IXA00383976
Description PCAP library allocates 64 mbufs for reading packets from PCAP file, but declares them as static and reuses the same mbufs repeatedly rather than handing off to the ring for allocation of new mbuf for each read from the PCAP file.
Implication In multi-threaded applications ata in the mbuf is overwritten.
Resolution/Workaround Fixed in eth_pcap_rx() in rte_eth_pcap.c
Affected Environment/Platform All
Driver/Module Multi-threaded applications using PCAP library

7.9. MP Client Example app - flushing part of TX is not working for some ports if set specific port mask with skipped ports

Title MP Client Example app - flushing part of TX is not working for some ports if set specific port mask with skipped ports
Reference # 52
Description When ports not in a consecutive set, for example, ports other than ports 0, 1 or 0,1,2,3 are used with the client-service sample app, when no further packets are received by a client, the application may not flush correctly any unsent packets already buffered inside it.
Implication Not all buffered packets are transmitted if traffic to the clients application is stopped. While traffic is continually received for transmission on a port by a client, buffer flushing happens normally.
Resolution/Workaround

Changed line 284 of the client.c file:

from “send_packets(ports);” to “send_packets(ports->id[port]);”

Affected Environment/Platform All
Driver/Module Client - Server Multi-process Sample application

7.10. Packet truncation with Intel® I350 Gigabit Ethernet Controller

Title Packet truncation with Intel I350 Gigabit Ethernet Controller
Reference # IXA00372461
Description The setting of the hw_strip_crc field in the rte_eth_conf structure passed to the rte_eth_dev_configure() function is not respected and hardware CRC stripping is always enabled. If the field is set to 0, then the software also tries to strip the CRC, resulting in packet truncation.
Implication The last 4 bytes of the packets received will be missing.
Resolution/Workaround Fixed an omission in device initialization (setting the STRCRC bit in the DVMOLR register) to respect the CRC stripping selection correctly.
Affected Environment/Platform Systems using the Intel® I350 Gigabit Ethernet Controller
Driver/Module 1 GbE Poll Mode Driver (PMD)

7.11. Device initialization failure with Intel® Ethernet Server Adapter X520-T2

Title Device initialization failure with Intel® Ethernet Server Adapter X520-T2
Reference # 55
Description If this device is bound to the Linux kernel IXGBE driver when the DPDK is initialized, DPDK is initialized, the device initialization fails with error code -17 “IXGBE_ERR_PHY_ADDR_INVALID”.
Implication The device is not initialized and cannot be used by an application.
Resolution/Workaround Introduced a small delay in device initialization to allow DPDK to always find the device.
Affected Environment/Platform Systems using the Intel® Ethernet Server Adapter X520-T2
Driver/Module 10 GbE Poll Mode Driver (PMD)

7.12. DPDK kernel module is incompatible with Linux kernel version 3.3

Title DPDK kernel module is incompatible with Linux kernel version 3.3
Reference # IXA00373232
Description The igb_uio kernel module fails to compile on systems with Linux kernel version 3.3 due to API changes in kernel headers
Implication The compilation fails and Ethernet controllers fail to initialize without the igb_uio module.
Resolution/Workaround Kernel functions pci_block_user_cfg_access() / pci_cfg_access_lock() and pci_unblock_user_cfg_access() / pci_cfg_access_unlock() are automatically selected at compile time as appropriate.
Affected Environment/Platform Linux systems using kernel version 3.3 or later
Driver/Module UIO module

7.13. Initialization failure with Intel® Ethernet Controller X540-T2

Title Initialization failure with Intel® Ethernet Controller X540-T2
Reference # 57
Description This device causes a failure during initialization when the software tries to read the part number from the device EEPROM.
Implication Device cannot be used.
Resolution/Workaround Remove unnecessary check of the PBA number from the device.
Affected Environment/Platform Systems using the Intel® Ethernet Controller X540-T2
Driver/Module 10 GbE Poll Mode Driver (PMD)

7.15. It is not possible to adjust the duplex setting for 1GB NIC ports

Title It is not possible to adjust the duplex setting for 1 GB NIC ports
Reference # 66
Description The rte_eth_conf structure does not have a parameter that allows a port to be set to half-duplex instead of full-duplex mode, therefore, 1 GB NICs cannot be configured explicitly to a full- or half-duplex value.
Implication 1 GB port duplex capability cannot be set manually.
Resolution The PMD now uses a new field added to the rte_eth_conf structure to allow 1 GB ports to be configured explicitly as half- or full-duplex.
Affected Environment/Platform All
Driver/Module 1 GbE Poll Mode Driver (PMD)

7.16. Calling rte_eth_dev_stop() on a port does not free all the mbufs in use by that port

Title Calling rte_eth_dev_stop() on a port does not free all the mbufs in use by that port
Reference # 67
Description The rte_eth_dev_stop() function initially frees all mbufs used by that port’s RX and TX rings, but subsequently repopulates the RX ring again later in the function.
Implication Not all mbufs used by a port are freed when the port is stopped.
Resolution The driver no longer re-populates the RX ring in the rte_eth_dev_stop() function.
Affected Environment/Platform All
Driver/Module IGB and IXGBE Poll Mode Drivers (PMDs)

7.17. PMD does not always create rings that are properly aligned in memory

Title PMD does not always create rings that are properly aligned in memory
Reference # IXA00373158
Description The NIC hardware used by the PMD requires that the RX and TX rings used must be aligned in memory on a 128-byte boundary. The memzone reservation function used inside the PMD only guarantees that the rings are aligned on a 64-byte boundary, so errors can occur if the rings are not aligned on a 128-byte boundary.
Implication Unintended overwriting of memory can occur and PMD behavior may also be effected.
Resolution A new rte_memzone_reserve_aligned() API has been added to allow memory reservations from hugepage memory at alignments other than 64-bytes. The PMD has been modified so that the rings are allocated using this API with minimum alignment of 128-bytes.
Affected Environment/Platform All
Driver/Module IGB and IXGBE Poll Mode Drivers (PMDs)

7.18. Checksum offload might not work correctly when mixing VLAN-tagged and ordinary packets

Title Checksum offload might not work correctly when mixing VLAN-tagged and ordinary packets
Reference # IXA00378372
Description Incorrect handling of protocol header lengths in the PMD driver
Implication The checksum for one of the packets may be incorrect.
Resolution/Workaround Corrected the offset calculation.
Affected Environment/Platform All
Driver/Module Poll Mode Driver (PMD)

7.19. Port not found issue with Intel® 82580 Gigabit Ethernet Controller

Title Port not found issue with Intel® 82580 Gigabit Ethernet Controller
Reference # 50
Description After going through multiple driver unbind/bind cycles, an Intel® 82580 Ethernet Controller port may no longer be found and initialized by the DPDK.
Implication The port will be unusable.
Resolution/Workaround Issue was not reproducible and therefore no longer considered an issue.
Affected Environment/Platform All
Driver/Module 1 GbE Poll Mode Driver (PMD)

7.20. Packet mbufs may be leaked from mempool if rte_eth_dev_start() function fails

Title Packet mbufs may be leaked from mempool if rte_eth_dev_start() function fails
Reference # IXA00373373
Description The rte_eth_dev_start() function allocates mbufs to populate the NIC RX rings. If the start function subsequently fails, these mbufs are not freed back to the memory pool from which they came.
Implication mbufs may be lost to the system if rte_eth_dev_start() fails and the application does not terminate.
Resolution/Workaround mbufs are correctly deallocated if a call to rte_eth_dev_start() fails.
Affected Environment/Platform All
Driver/Module Poll Mode Driver (PMD)

7.21. Promiscuous mode for 82580 NICs can only be enabled after a call to rte_eth_dev_start for a port

Title Promiscuous mode for 82580 NICs can only be enabled after a call to rte_eth_dev_start for a port
Reference # IXA00373833
Description

For 82580-based network ports, the rte_eth_dev_start() function can overwrite the setting of the promiscuous mode for the device.

Therefore, the rte_eth_promiscuous_enable() API call should be called after rte_eth_dev_start() for these devices.

Implication Promiscuous mode can only be enabled if API calls are in a specific order.
Resolution/Workaround The NIC now restores most of its configuration after a call to rte_eth_dev_start().
Affected Environment/Platform All
Driver/Module Poll Mode Driver (PMD)

7.22. Incorrect CPU socket information reported in /proc/cpuinfo can prevent the DPDK from running

Title Incorrect CPU socket information reported in /proc/cpuinfo can prevent the Intel® DPDK from running
Reference # 63
Description The DPDK users information supplied by the Linux kernel to determine the hardware properties of the system being used. On rare occasions, information supplied by /proc/cpuinfo does not match that reported elsewhere. In some cases, it has been observed that the CPU socket numbering given in /proc/cpuinfo is incorrect and this can prevent DPDK from operating.
Implication The DPDK cannot run on systems where /proc/cpuinfo does not report the correct CPU socket topology.
Resolution/Workaround CPU socket information is now read from /sys/devices/cpu/pcuN/topology
Affected Environment/Platform All
Driver/Module Environment Abstraction Layer (EAL)

7.23. L3FWD sample application may fail to transmit packets under extreme conditions

Title L3FWD sample application may fail to transmit packets under extreme conditions
Reference # IXA00372919
Description Under very heavy load, the L3 Forwarding sample application may fail to transmit packets due to the system running out of free mbufs.
Implication Sending and receiving data with the PMD may fail.
Resolution/ Workaround The number of mbufs is now calculated based on application parameters.
Affected Environment/Platform All
Driver/Module L3 Forwarding sample application

7.24. L3FWD-VF might lose CRC bytes

Title L3FWD-VF might lose CRC bytes
Reference # IXA00373424
Description Currently, the CRC stripping configuration does not affect the VF driver.
Implication Packets transmitted by the DPDK in the VM may be lacking 4 bytes (packet CRC).
Resolution/ Workaround Set “strip_crc” to 1 in the sample applications that use the VF PMD.
Affected Environment/Platform All
Driver/Module IGB and IXGBE VF Poll Mode Drivers (PMDs)

7.25. 32-bit DPDK sample applications fails when using more than one 1 GB hugepage

Title 32-bit Intel® DPDK sample applications fails when using more than one 1 GB hugepage
Reference # 31
Description 32-bit applications may have problems when running with multiple 1 GB pages on a 64-bit OS. This is due to the limited address space available to 32-bit processes.
Implication 32-bit processes need to use either 2 MB pages or have their memory use constrained to 1 GB if using 1 GB pages.
Resolution EAL now limits virtual memory to 1 GB per page size.
Affected Environment/Platform 64-bit systems running 32-bit Intel® DPDK with 1 GB hugepages
Driver/Module Environment Abstraction Layer (EAL)

7.26. l2fwd fails to launch if the NIC is the Intel® 82571EB Gigabit Ethernet Controller

Title l2fwd fails to launch if the NIC is the Intel® 82571EB Gigabit Ethernet Controller
Reference # IXA00373340
Description The 82571EB NIC can handle only one TX per port. The original implementation allowed for a more complex handling of multiple queues per port.
Implication The l2fwd application fails to launch if the NIC is 82571EB.
Resolution l2fwd now uses only one TX queue.
Affected Environment/Platform All
Driver/Module Sample Application

7.27. 32-bit DPDK applications may fail to initialize on 64-bit OS

Title 32-bit DPDK applications may fail to initialize on 64-bit OS
Reference # IXA00378513
Description The EAL used a 32-bit pointer to deal with physical addresses. This could create problems when the physical address of a hugepage exceeds the 4 GB limit.
Implication 32-bit applications may not initialize on a 64-bit OS.
Resolution/Workaround The physical address pointer is now 64-bit.
Affected Environment/Platform 32-bit applications in a 64-bit Linux* environment
Driver/Module Environment Abstraction Layer (EAL)

7.28. Lpm issue when using prefixes > 24

Title Lpm issue when using prefixes > 24
Reference # IXA00378395
Description Extended tbl8’s are overwritten by multiple lpm rule entries when the depth is greater than 24.
Implication LPM tbl8 entries removed by additional rules.
Resolution/ Workaround Adding tbl8 entries to a valid group to avoid making the entire table invalid and subsequently overwritten.
Affected Environment/Platform All
Driver/Module Sample applications

7.29. IXGBE PMD hangs on port shutdown when not all packets have been sent

Title IXGBE PMD hangs on port shutdown when not all packets have been sent
Reference # IXA00373492
Description When the PMD is forwarding packets, and the link goes down, and port shutdown is called, the port cannot shutdown. Instead, it hangs due to the IXGBE driver incorrectly performing the port shutdown procedure.
Implication The port cannot shutdown and does not come back up until re-initialized.
Resolution/Workaround The port shutdown procedure has been rewritten.
Affected Environment/Platform All
Driver/Module IXGBE Poll Mode Driver (PMD)

7.30. Config file change can cause build to fail

Title Config file change can cause build to fail
Reference # IXA00369247
Description If a change in a config file results in some DPDK files that were needed no longer being needed, the build will fail. This is because the *.o file will still exist, and the linker will try to link it.
Implication DPDK compilation failure
Resolution The Makefile now provides instructions to clean out old kernel module object files.
Affected Environment/Platform All
Driver/Module Load balance sample application

7.31. rte_cmdline library should not be used in production code due to limited testing

Title rte_cmdline library should not be used in production code due to limited testing
Reference # 34
Description The rte_cmdline library provides a command line interface for use in sample applications and test applications distributed as part of DPDK. However, it is not validated to the same standard as other DPDK libraries.
Implication It may contain bugs or errors that could cause issues in production applications.
Resolution The rte_cmdline library is now tested correctly.
Affected Environment/Platform All
Driver/Module rte_cmdline

7.32. Some *_INITIALIZER macros are not compatible with C++

Title Some *_INITIALIZER macros are not compatible with C++
Reference # IXA00371699
Description These macros do not work with C++ compilers, since they use the C99 method of named field initialization. The TOKEN_*_INITIALIZER macros in librte_cmdline have this problem.
Implication C++ application using these macros will fail to compile.
Resolution/ Workaround Macros are now compatible with C++ code.
Affected Environment/Platform All
Driver/Module rte_timer, rte_cmdline

7.33. No traffic through bridge when using exception_path sample application

Title No traffic through bridge when using exception_path sample application
Reference # IXA00168356
Description On some systems, packets are sent from the exception_path to the tap device, but are not forwarded by the bridge.
Implication The sample application does not work as described in its sample application quide.
Resolution/Workaround

If you cannot get packets though the bridge, it might be because IP packet filtering rules are up by default on the bridge. In that case you can disable it using the following:

# for i in /proc/sys/net/bridge/bridge_nf-*; do echo 0 > $i; done

Affected Environment/Platform Linux
Driver/Module Exception path sample application

7.34. Segmentation Fault in testpmd after config fails

Title Segmentation Fault in testpmd after config fails
Reference # IXA00378638
Description Starting testpmd with a parameter that causes port queue setup to fail, for example, set TX WTHRESH to non 0 when tx_rs_thresh is greater than 1, then doing “port start all”.
Implication Seg fault in testpmd
Resolution/ Workaround Testpmd now forces port reconfiguration if the initial configuration failed.
Affected Environment/Platform All
Driver/Module Testpmd Sample Application

7.35. Linux kernel pci_cfg_access_lock() API can be prone to deadlock

Title Linux kernel pci_cfg_access_lock() API can be prone to deadlock
Reference # IXA00373232
Description The kernel APIs used for locking in the igb_uio driver can cause a deadlock in certain situations.
Implication Unknown at this time; depends on the application.
Resolution/ Workaround The igb_uio driver now uses the pci_cfg_access_trylock() function instead of pci_cfg_access_lock().
Affected Environment/Platform All
Driver/Module IGB UIO Driver

7.36. When running multi-process applications, “rte_malloc” functions cannot be used in secondary processes

Title When running multi-process applications, “rte_malloc” functions cannot be used in secondary processes
Reference # 35
Description The rte_malloc library provides a set of malloc-type functions that reserve memory from hugepage shared memory. Since secondary processes cannot reserve memory directly from hugepage memory, rte_malloc functions cannot be used reliably.
Implication The librte_malloc functions, for example, rte_malloc(), rte_zmalloc() and rte_realloc() cannot be used reliably in secondary processes.
Resolution/ Workaround In addition to re-entrancy support, the Intel® DPDK now supports the reservation of a memzone from the primary thread or secondary threads. This is achieved by putting the reservation-related control data structure of the memzone into shared memory. Since rte_malloc functions request memory directly from the memzone, the limitation for secondary threads no longer applies.
Affected Environment/Platform All
Driver/Module rte_malloc

7.37. Configuring maximum packet length for IGB with VLAN enabled may not take intoaccount the length of VLAN tag

Title Configuring maximum packet length for IGB with VLAN enabled may not take into account the length of VLAN tag
Reference # IXA00379880
Description For IGB, the maximum packet length configured may not include the length of the VLAN tag even if VLAN is enabled.
Implication Packets with a VLAN tag with a size close to the maximum may be dropped.
Resolution/Workaround NIC registers are now correctly initialized.
Affected Environment/Platform All with IGB NICs
Driver/Module IGB Poll Mode Driver (PMD)

7.38. Intel® I210 Ethernet controller always strips CRC of incoming packets

Title Intel® I210 Ethernet controller always strips CRC of incoming packets
Reference # IXA00380265
Description The Intel® I210 Ethernet controller (NIC) removes 4 bytes from the end of the packet regardless of whether it was configured to do so or not.
Implication Packets will be missing 4 bytes if the NIC is not configured to strip CRC.
Resolution/ Workaround NIC registers are now correctly initialized.
Affected Environment/Platform All
Driver/Module IGB Poll Mode Driver (PMD)

7.39. EAL can silently reserve less memory than requested

Title EAL can silently reserve less memory than requested
Reference # IXA00380689
Description During application initialization, the EAL can silently reserve less memory than requested by the user through the -m application option.
Implication The application fails to start.
Resolution EAL will detect if this condition occurs and will give anappropriate error message describing steps to fix the problem.
Affected Environment/Platform All
Driver/Module Environmental Abstraction Layer (EAL)

7.40. SSH connectivity with the board may be lost when starting a DPDK application

Title SSH connectivity with the board may be lost when starting a DPDK application
Reference # 26
Description Currently, the Intel® DPDK takes over all the NICs found on the board that are supported by the DPDK. This results in these NICs being removed from the NIC set handled by the kernel,which has the side effect of any SSH connection being terminated. See also issue #27.
Implication Loss of network connectivity to board.
Resolution DPDK now no longer binds ports on startup. Please refer to the Getting Started Guide for information on how to bind/unbind ports from DPDK.
Affected Environment/Platform Systems using a Intel®DPDK supported NIC for remote system access
Driver/Module Environment Abstraction Layer (EAL)

7.41. Remote network connections lost when running autotests or sample applications

Title Remote network connections lost when running autotests or sample applications
Reference # 27
Description The PCI autotest and sample applications will scan for PCI devices and will remove from Linux* control those recognized by it. This may result in the loss of network connections to the system.
Implication Loss of network connectivity to board when connected remotely.
Resolution DPDK now no longer binds ports on startup. Please refer to the Getting Started Guide for information on how to bind/unbind ports from DPDK.
Affected Environment/Platform Systems using a DPDK supported NIC for remote system access
Driver/Module Sample applications

7.42. KNI may not work properly in a multi-process environment

Title KNI may not work properly in a multi-process environment
Reference # IXA00380475
Description Some of the network interface operations such as, MTU change or link UP/DOWN, when executed on KNI interface, might fail in a multi-process environment, although they are normally successful in the DPDK single process environment.
Implication Some network interface operations on KNI cannot be used in a DPDK multi-process environment.
Resolution The ifconfig callbacks are now explicitly set in either master or secondary process.
Affected Environment/Platform All
Driver/Module Kernel Network Interface (KNI)

7.43. Hash library cannot be used in multi-process applications with multiple binaries

Title Hash library cannot be used in multi-process applications with multiple binaries
Reference # IXA00168658
Description The hash function used by a given hash-table implementation is referenced in the code by way of a function pointer. This means that it cannot work in cases where the hash function is at a different location in the code segment in different processes, as is the case where a DPDK multi-process application uses a number of different binaries, for example, the client-server multi-process example.
Implication The Hash library will not work if shared by multiple processes.
Resolution/Workaround New API was added for multiprocess scenario. Please refer to DPDK Programmer’s Guide for more information.
Affected Environment/Platform All
Driver/Module librte_hash library

7.44. Unused hugepage files are not cleared after initialization

Title Hugepage files are not cleared after initialization
Reference # IXA00383462
Description EAL leaves hugepages allocated at initialization in the hugetlbfs even if they are not used.
Implication Reserved hugepages are not freed back to the system, preventing other applications that use hugepages from running.
Resolution/Workaround Reserved and unused hugepages are now freed back to the system.
Affected Environment/Platform All
Driver/Module EAL

7.45. Packet reception issues when virtualization is enabled

Title Packet reception issues when virtualization is enabled
Reference # IXA00369908
Description Packets are not transmitted or received on when VT-d is enabled in the BIOS and Intel IOMMU is used. More recent kernels do not exhibit this issue.
Implication An application requiring packet transmission or reception will not function.
Resolution/Workaround DPDK Poll Mode Driver now has the ability to map correct physical addresses to the device structures.
Affected Environment/Platform All
Driver/Module Poll mode drivers

7.46. Double VLAN does not work on Intel® 40GbE ethernet contoller

Title Double VLAN does not work on Intel® 40GbE ethernet controller
Reference # IXA00369908
Description On Intel® 40 GbE ethernet controller double VLAN does not work. This was confirmed as a Firmware issue which will be fixed in later versions of firmware.
Implication After setting double vlan to be enabled on a port, no packets can be transmitted out on that port.
Resolution/Workaround Resolved in latest release with firmware upgrade.
Affected Environment/Platform All
Driver/Module Poll mode drivers

Table Of Contents

Previous topic

6. Known Issues and Limitations

Next topic

8. ABI policy

This Page