[dpdk-users] DPDK KNI Issue

Ilir Iljazi iljazi at gmail.com
Mon Nov 30 23:09:36 CET 2015


Hi,
I have been having an issue with dpdk kni whereby I cant send and receive
packets from the kni interface. I spent about a week trying to figure it
out the issue myself to no avail. Although I did find articles with a
similar signature to mine none of the proposed solutions helped solve the
problem.

Environment:
Ubuntu Server 14.04
DPDK Package 2.1.0 (Latest)
Network Card: (10Gbe ixgbe driver)

06:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+
Network Connection
06:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+
Network Connection

06.00.0 (port 0 connected to switch)
06:00.1 (port 1 not connected to switch)

Configuration:
1.) DPDK built without issue
2.) Modules Loaded:

insmod $RTE_TARGET/kmod/igb_uio.ko
insmod $RTE_TARGET/kmod/rte_kni.ko kthread_mode=multiple


3.) Reserved Huge Pages:

echo 4096 >
/sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages
echo 4096 >
/sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages


4.) Mounted huge page partition

echo ">>> Mounting huge page partition"
mkdir -p /mnt/huge
mount -t hugetlbfs nodev /mnt/huge


5.) Interfaces 06:00.0/1 bound to igb uio module (option 19 on setup)

Network devices using DPDK-compatible driver
============================================
0000:06:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=igb_uio
unused=
0000:06:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=igb_uio
unused=


6.) Started kni test application:

Command: ./examples/kni/build/app/kni -n 4 -c 0xff -- -p 0x1 -P
--config="(0,5,7)" &

Output:

EAL: PCI device 0000:06:00.0 on NUMA socket -1
EAL:   probe driver: 8086:10fb rte_ixgbe_pmd
EAL:   PCI memory mapped at 0x7fcda5c00000
EAL:   PCI memory mapped at 0x7fcda5c80000
PMD: eth_ixgbe_dev_init(): MAC: 2, PHY: 18, SFP+: 5
PMD: eth_ixgbe_dev_init(): port 0 vendorID=0x8086 deviceID=0x10fb
EAL: PCI device 0000:06:00.1 on NUMA socket -1
EAL:   probe driver: 8086:10fb rte_ixgbe_pmd
EAL:   PCI memory mapped at 0x7fcda5c84000
EAL:   PCI memory mapped at 0x7fcda5d04000
PMD: eth_ixgbe_dev_init(): MAC: 2, PHY: 18, SFP+: 6
PMD: eth_ixgbe_dev_init(): port 1 vendorID=0x8086 deviceID=0x10fb
APP: Port ID: 0
APP: Rx lcore ID: 5, Tx lcore ID: 7
APP: Initialising port 0 ...
PMD: ixgbe_dev_rx_queue_setup(): sw_ring=0x7fcd5c1adcc0
sw_sc_ring=0x7fcd5c1ad780 hw_ring=0x7fcd5c1ae200 dma_addr=0xe5b1ae200
PMD: ixgbe_dev_tx_queue_setup(): sw_ring=0x7fcd5c19b5c0
hw_ring=0x7fcd5c19d600 dma_addr=0xe5b19d600
PMD: ixgbe_set_tx_function(): Using simple tx code path
PMD: ixgbe_set_tx_function(): Vector tx enabled.
PMD: ixgbe_set_rx_function(): Vector rx enabled, please make sure RX burst
size no less than 32.
KNI: pci: 06:00:00  8086:10fb


Checking link status
done
Port 0 Link Up - speed 10000 Mbps - full-duplex
APP: Lcore 1 has nothing to do
APP: Lcore 2 has nothing to do
APP: Lcore 3 has nothing to do
APP: Lcore 4 has nothing to do
APP: Lcore 5 is reading from port 0
APP: Lcore 6 has nothing to do
APP: Lcore 7 is writing to port 0
APP: Lcore 0 has nothing to do


7.) KNI interface configured and brought up:

root at l3sys2-acc2-3329:~/dpdk-2.1.0# ifconfig vEth0 192.168.13.95 netmask
255.255.248.0 up
APP: Configure network interface of 0 up
PMD: ixgbe_set_rx_function(): Vector rx enabled, please make sure RX burst
size no less than 32.

root at l3sys2-acc2-3329:~/dpdk-2.1.0# ifconfig vEth0

vEth0     Link encap:Ethernet  HWaddr 90:e2:ba:55:fd:c4
          inet addr:192.168.13.95  Bcast:192.168.15.255  Mask:255.255.248.0
          inet6 addr: fe80::92e2:baff:fe55:fdc4/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:8 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Note also that dmesg is clean not pointing to any issues:
[ 1770.113952] KNI: /dev/kni opened
[ 1770.561957] KNI: Creating kni...
[ 1770.561973] KNI: tx_phys:      0x0000000e5b1ca9c0, tx_q addr:
0xffff880e5b1ca9c0
[ 1770.561974] KNI: rx_phys:      0x0000000e5b1c8940, rx_q addr:
0xffff880e5b1c8940
[ 1770.561975] KNI: alloc_phys:   0x0000000e5b1c68c0, alloc_q addr:
0xffff880e5b1c68c0
[ 1770.561976] KNI: free_phys:    0x0000000e5b1c4840, free_q addr:
0xffff880e5b1c4840
[ 1770.561977] KNI: req_phys:     0x0000000e5b1c27c0, req_q addr:
0xffff880e5b1c27c0
[ 1770.561978] KNI: resp_phys:    0x0000000e5b1c0740, resp_q addr:
0xffff880e5b1c0740
[ 1770.561979] KNI: mbuf_phys:    0x000000006727dec0, mbuf_kva:
0xffff88006727dec0
[ 1770.561980] KNI: mbuf_va:      0x00007fcd8627dec0
[ 1770.561981] KNI: mbuf_size:    2048
[ 1770.561987] KNI: pci_bus: 06:00:00
[ 1770.599689] igb_uio 0000:06:00.0: (PCI Express:5.0GT/s:Width x8)
[ 1770.599691] 90:e2:ba:55:fd:c4
[ 1770.599777] igb_uio 0000:06:00.0 (unnamed net_device) (uninitialized):
MAC: 2, PHY: 0, PBA No: E68793-006
[ 1770.599779] igb_uio 0000:06:00.0 (unnamed net_device) (uninitialized):
Enabled Features: RxQ: 1 TxQ: 1
[ 1770.599790] igb_uio 0000:06:00.0 (unnamed net_device) (uninitialized):
Intel(R) 10 Gigabit Network Connection


8.) ethtool vEth0 link is detected:

root at l3sys2-acc2-3329:~/dpdk-2.1.0# ethtool vEth0
Settings for vEth0:
Supported ports: [ FIBRE ]
Supported link modes:   10000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: No
Advertised link modes:  10000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 10000Mb/s
Duplex: Full
Port: Other
PHYAD: 0
Transceiver: external
Auto-negotiation: off
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
      drv probe link
Link detected: yes


9.) kernel started with: iommu=pt intel_iommu=on

GRUB_CMDLINE_LINUX="iommu=pt intel_iommu=on console=tty1
console=ttyS1,115200n8"


10.) Disabled virtualization in BIOS per forum recommendation


Situation:
Despite doing everything seemingly correct I cant ssh or ping to and from
this interface. I tried starting tcpdump on the interface but didn't notice
any traffic. I'm not sure what I'm doing wrong here, if I could get some
support I'd appreciate it. I can provide additional details from the system
if needed.

Thanks!


More information about the users mailing list