Hello, I am testing testpmd on recent kernels (>= 3.15) and i have an IOMMU problem (there are several commits around IOMMU in v3.15, they may be related with this problem):
Hardware: Platform: Intel S2600IP CPU: Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz BIOS version: SE5C600.86B.02.03.0003.041920141333 NICs: 05:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01) 05:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01) 07:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01) 07:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01) Software: Linux distribution: Fedora 20 Linux kernel: >= 3.15 (tested with 3.15.6-200 fc20 and 3.16.0-rc6 vanilla) Linux boot line: BOOT_IMAGE=/boot/vmlinuz-3.15.6-200.fc20.x86_64 root=/dev/sda5 console=tty1 console=ttyS0,115200n8 intel_iommu=on iommu=pt DPDK version: 1.7.0 (also tested on master, with same result) Test: I run the following commands to start the test: echo 1024 > /proc/sys/vm/nr_hugepages mount -t hugetlbfs nodev /mnt/huge modprobe uio insmod dpdk/build/kmod/igb_uio.ko dpdk/tools/dpdk_nic_bind.py --bind=igb_uio 05:00.0 05:00.1 07:00.0 07:00.1 dpdk/build/app/testpmd --huge-dir /mnt/huge -n 4 -c 0x0001fe0001ff --socket-mem=512,0 -- --socket-num=0 -i --rxq=4 --txq=16 --portmask=0xf --rxd=128 --rxfreet=32 --rxpt=8 --rxht=8 --rxwt=0 --txd=512 --txfreet=32 --txpt=32 --txht=0 --txwt=0 --txrst=32 --txqflags=0xF00 --burst=32 --mbcache=250 --total-num-mbufs=64000 --coremask=0x0001fe0001fe When i start the traffic, i have the following messages displayed on screen: [ 1819.770528] dmar: DMAR:[DMA Read] Request device [05:00.0] fault addr 3c4160000 [ 1819.770528] DMAR:[fault reason 02] Present bit in context entry is clear [ 1819.786243] dmar: DMAR:[DMA Read] Request device [07:00.1] fault addr 3ce399000 [ 1819.786243] DMAR:[fault reason 02] Present bit in context entry is clear [ 1819.801955] dmar: DMAR:[DMA Read] Request device [05:00.1] fault addr 3ce119000 [ 1819.801955] DMAR:[fault reason 02] Present bit in context entry is clear [ 1819.817668] dmar: DMAR:[DMA Read] Request device [07:00.0] fault addr 3ce269000 [ 1819.817668] DMAR:[fault reason 02] Present bit in context entry is clear and nothing flows through the testpmd ports. The problem does not appear: - with kernel older than 3.15 - if interfaces are bound using vfio-pci instead of igb_uio - if iommu is disabled in bootline (remove intel_iommu=on iommu=pt from kernel boot line) Sometimes, only two ports instead of four have DMAR problems, the two others forward packets normally. Does someone know what may happen? thanks didier