[dpdk-users] Problems running ip_pipeline on VM

Singh, Jasvinder jasvinder.singh at intel.com
Tue Feb 23 16:04:53 CET 2016


Hi Matheus,


> -----Original Message-----
> From: users [mailto:users-bounces at dpdk.org] On Behalf Of Matheus
> Salgueiro Castanho
> Sent: Tuesday, February 23, 2016 2:11 PM
> To: users at dpdk.org
> Subject: [dpdk-users] Problems running ip_pipeline on VM
> 
> Hi all,
> 
> We've been having problems running the ip_pipeline application on a VM.
> 
> We are using Open vSwitch 2.4 with DPDK 2.0 on the host and DPDK 2.2.0 on
> the VM. The OS is Ubuntu Server 14.04 x64, both host and guest. "uname -r"
> returns 3.13.0-24-generic for both as well.
> 
> We are using vhost-user ports for the communication between the VM and
> OvS.
> 
> Also, we take the same configuration steps on host and guest with the
> setup.sh script, bind interfaces to igb_uio driver, allocating hugepages, etc.
> 
> When we try to run the ip_pipeline application by executing the command:
>  ./build/ip_pipeline -f ./config/myFirewall.cfg -p 0x1
> 
> where myFirewall.cfg is my configuration file as follows:
> 
> [PIPELINE0]
> type = MASTER
> core = 0
> 
> [PIPELINE1]
> type = FIREWALL
> core = 0
> pktq_in = RXQ0.0
> pktq_out = TXQ0.0
> 
> The output we get is this:
> 
> [APP] Initializing CPU core map ...
> [APP] CPU core mask = 0x0000000000000001 [APP] Initializing EAL ...
> EAL: Detected lcore 0 as core 0 on socket 0
> EAL: Detected lcore 1 as core 0 on socket 0
> EAL: Support maximum 128 logical core(s) by configuration.
> EAL: Detected 2 lcore(s)
> EAL: VFIO modules not all loaded, skip VFIO support...
> EAL: Setting up physically contiguous memory...
> EAL: Ask a virtual area of 0x400000 bytes
> EAL: Virtual area found at 0x7f44d4000000 (size = 0x400000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f44d3c00000 (size = 0x200000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f44d3800000 (size = 0x200000)
> EAL: Ask a virtual area of 0x33400000 bytes
> EAL: Virtual area found at 0x7f44a0200000 (size = 0x33400000)
> EAL: Ask a virtual area of 0x3a000000 bytes
> EAL: Virtual area found at 0x7f4466000000 (size = 0x3a000000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4465c00000 (size = 0x200000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4465800000 (size = 0x200000)
> EAL: Ask a virtual area of 0x2400000 bytes
> EAL: Virtual area found at 0x7f4463200000 (size = 0x2400000)
> EAL: Ask a virtual area of 0x800000 bytes
> EAL: Virtual area found at 0x7f4462800000 (size = 0x800000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4462400000 (size = 0x200000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4462000000 (size = 0x200000)
> EAL: Ask a virtual area of 0x400000 bytes
> EAL: Virtual area found at 0x7f4461a00000 (size = 0x400000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4461600000 (size = 0x200000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4461200000 (size = 0x200000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4460e00000 (size = 0x200000)
> EAL: Ask a virtual area of 0x200000 bytes
> EAL: Virtual area found at 0x7f4460a00000 (size = 0x200000)
> EAL: Requesting 910 pages of size 2MB from socket 0
> EAL: TSC frequency is ~2397217 KHz
> EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using
> unreliable clock cycles !
> EAL: Master lcore 0 is ready (tid=d56cb940;cpuset=[0])
> EAL: PCI device 0000:00:03.0 on NUMA socket -1
> EAL:   probe driver: 1af4:1000 rte_virtio_pmd
> EAL: PCI device 0000:00:04.0 on NUMA socket -1
> EAL:   probe driver: 8086:1521 rte_igb_pmd
> EAL:   Not managed by a supported kernel driver, skipped
> [APP] Initializing MEMPOOL0 ...
> [APP] Initializing LINK0 (0) (1 RXQ, 1 TXQ) ...
> PANIC in app_link_up_internal():
> LINK0 (0): PMD set up error -95
> 7: [./build/ip_pipeline() [0x431c03]]
> 6: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)
> [0x7f44d47e1ec5]]
> 5: [./build/ip_pipeline(main+0x5f) [0x4307bf]]
> 4: [./build/ip_pipeline(app_init+0xcf3) [0x43f2d3]]
> 3: [./build/ip_pipeline() [0x43df16]]
> 2: [./build/ip_pipeline(__rte_panic+0xc9) [0x42b23d]]
> 1: [./build/ip_pipeline(rte_dump_stack+0x1a) [0x4c4afa]]
> 
> Apparently it fails when trying to initialize the link, but we're not sure why
> this is happening. Is there any other configuration step that we forgot in
> order to configure a VM to run a DPDK application?
> 

Please follow the earlier discussion at thread -
http://dpdk.org/ml/archives/users/2016-January/000215.html

The problem I see here is that VM has set up virtual ports.  The app_link_up_internal() function  calls out  low level Ethernet API to enable /disable port which doesn't work in case of virtual ports of VM.   Therefore, disable app_link_up_internal () function (ip_pipeline/init.c ) and see if it fixes the error.

_Jasvinder


More information about the users mailing list