From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ie0-f194.google.com (mail-ie0-f194.google.com [209.85.223.194]) by dpdk.org (Postfix) with ESMTP id 0BF1B5A42 for ; Wed, 31 Dec 2014 17:50:11 +0100 (CET) Received: by mail-ie0-f194.google.com with SMTP id y20so4046066ier.9 for ; Wed, 31 Dec 2014 08:50:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=IxDAfV87XAl0SKHG1JuQt0vjYDBYgWvxetRlak6TS88=; b=FvKbDPn18qt732yr3v8XY1JbX7At81SYlj/6A6IK8fASthTGMYrTKAPg+gDSqhcd3n cOIXIlu2IQeBDncccWtQmKKncsHF0zjkX66cN9qlsGiJvNqzSD6I6X6xjvxYYvX++IJY kQM6lFHcCee+P7gdrBeWbyRfKvmQLzPF9jWC+rpU7MkJBaVYapE/mMJc1ErTBsok3O8H IbPAeOEQIGA0vfwwe6fVClLKXc/yJJ2ZHwFNUEUxMWyx2Csuw1iQ+qeGMVbchtk78SzE 8y4SIiY6ngQYa8NAfnPgqmjs4fiqp3GzaH9NWda9vhFK5N6t7G22aFfqNEjqod+CYnMf S96w== MIME-Version: 1.0 X-Received: by 10.50.66.131 with SMTP id f3mr43699617igt.7.1420044610349; Wed, 31 Dec 2014 08:50:10 -0800 (PST) Received: by 10.50.89.134 with HTTP; Wed, 31 Dec 2014 08:50:10 -0800 (PST) In-Reply-To: <20141231144859.GA6637@localhost.localdomain> References: <20141229210210.GA31480@localhost.localdomain> <20141230212406.GB2187@localhost.localdomain> <20141231144859.GA6637@localhost.localdomain> Date: Wed, 31 Dec 2014 10:50:10 -0600 Message-ID: From: Lyn M To: Neil Horman Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: dev@dpdk.org Subject: Re: [dpdk-dev] l3fwd error, port 0 is not present on the board X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 16:50:11 -0000 Neil, When I build DPDK 1.8.0 with the default value CONFIG_RTE_BUILD_COMBINE_LIBS=n, I am able to run the testpmd successfully. So, that does appear to be the culprit. The objdump -t output for testpmd (with COMBINE_LIBS=n and COMBINE_LIBS=y) files are here: https://www.dropbox.com/sh/6os9yfn22jjcnmy/AAAjEV3u06XQ1t3UXdWcgru0a?dl=0 Thanks, Lyn On Wed, Dec 31, 2014 at 8:48 AM, Neil Horman wrote: > On Wed, Dec 31, 2014 at 08:18:34AM -0600, Lyn M wrote: > > Neil, to build DPDK, I am doing the following steps: > > 1) download DPDK tarball (1.7.1 or 1.8.0) from > > http://dpdk.org/browse/dpdk/refs/ > > 2) untar > > 3) edit config/common_linuxapp and change CONFIG_RTE_BUILD_COMBINE_LIBS > > from "n" to "y" > > 4) follow all of the steps in http://dpdk.org/doc/quick-start > > > Hmm, I wonder if you're seeing a problem in which the constructors don't > get > linked in properly. Does it work if you don't specify > CONFIG_RTE_BUILD_COMBINE_LIBS? I.e. if you build several .a files? > > Can you objdump -t the resultant binary with and without COMBINE_LIBS and > post > it? > > Neil > > > When I do those steps for DPDK 1.7.1, the output of testpmd is OK, and I > > see both of my NICs that are bound to igb_uio. > > When I do those steps for DPDK 1.8.0, the output of testpmd is: > > EAL: Error - exiting with code: 1 > > Cause: No probed ethernet device > > > > I see the same result when I use the setup.sh script instead of manually > > doing the steps in http://dpdk.org/doc/quick-start > > > > Can you please show me an example of enabling the pmd init debug macros? > > > > Lyn > > > > On Tue, Dec 30, 2014 at 3:24 PM, Neil Horman > wrote: > > > > > On Tue, Dec 30, 2014 at 12:54:17PM -0600, Lyn M wrote: > > > > Neil, thank you for your reply. > > > > > > > > I used the DPDK 8.1.0 setup.sh script to clean the system (unbind > NICs, > > > > rmmod igb_uio and uio, remove hugepage mappings), and then re-built > for > > > > x86_64-native-linuxapp-gcc, setup hugepages, insmod the modules, > bound > > > the > > > > NICs, but have the same result when trying to run testpmd: > > > > EAL: Error - exiting with code: 1 > > > > Cause: No probed ethernet device > > > > > > > > > > > > I then cleaned up again, downloaded DPDK 1.7.1 and ran the setup.sh > > > script > > > > to build for x86_64-native-linuxapp-gcc. With 1.7.1, testpmd runs > > > > successfully, and I am able to run my l3fwd command as well. I also > built > > > > for x86_64-ivshmem-linuxapp-gcc, and testpmd ran successfully (other > than > > > > the warning about no IVSHMEM configuration). > > > > > > > > Thoughts? > > > > > > > Well, the root cause is still the same, DPDK isn't detecting any > devices > > > over > > > which to forward traffic, which means the nb_port count is zero. That > > > would > > > suggest that you didn't find any devices during rte_eal_init. The > > > question is > > > why. I'd turn on all the pmd init debug macros to see if all the init > > > routines > > > are getting called. > > > > > > Two questions: (1) are you doing a static or DSO build, and (2) did you > > > make any > > > changes to the make flags? > > > > > > Neil > > > > > > > On Mon, Dec 29, 2014 at 3:02 PM, Neil Horman > > > wrote: > > > > > > > > > On Mon, Dec 29, 2014 at 02:18:09PM -0600, Lyn M wrote: > > > > > > Hello all, > > > > > > > > > > > > Rangeley platform (1 CPU with 8 cores, 4x1 GbE, 2x10 GbE, Intel > PCIe > > > card > > > > > > with 2x10 GbE fiber) > > > > > > FC20 with hugepages enabled > > > > > > DPDK 1.8.0 built with T=x86_64-ivshmem-linuxapp-gcc > > > > > > > > > > > > */usr/src/dpdk/tools/dpdk_nic_bind.py --status* > > > > > > > > > > > > > > > > > > > > > > > > Network devices using DPDK-compatible driver > > > > > > > > > > > > ============================================ > > > > > > > > > > > > 0000:09:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' > > > drv=igb_uio > > > > > > unused=ixgbe > > > > > > > > > > > > 0000:09:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection' > > > drv=igb_uio > > > > > > unused=ixgbe > > > > > > > > > > > > > > > > > > > > > > > > Network devices using kernel driver > > > > > > > > > > > > =================================== > > > > > > > > > > > > 0000:00:14.0 'Ethernet Connection I354' if=enp0s20f0 drv=igb > > > > > unused=igb_uio > > > > > > > > > > > > 0000:00:14.1 'Ethernet Connection I354' if=enp0s20f1 drv=igb > > > > > unused=igb_uio > > > > > > > > > > > > 0000:00:14.2 'Ethernet Connection I354' if=enp0s20f2 drv=igb > > > > > unused=igb_uio > > > > > > > > > > > > 0000:00:14.3 'Ethernet Connection I354' if=enp0s20f3 drv=igb > > > > > unused=igb_uio > > > > > > > > > > > > 0000:07:00.0 'Ethernet Controller 10-Gigabit X540-AT2' if=p5p1 > > > drv=ixgbe > > > > > > unused=igb_uio *Active* > > > > > > > > > > > > 0000:07:00.1 'Ethernet Controller 10-Gigabit X540-AT2' if=p5p2 > > > drv=ixgbe > > > > > > unused=igb_uio > > > > > > > > > > > > > > > > > > > > > > > > Other network devices > > > > > > > > > > > > ===================== > > > > > > > > > > > > > > > > > > > > > > > > The DPDK helloworld example seems to run OK, other than the > warning > > > about > > > > > > IVSHMEM configuration not found: > > > > > > *./helloworld -c 0x3 -n 4* > > > > > > EAL: Detected lcore 0 as core 0 on socket 0 > > > > > > EAL: Detected lcore 1 as core 1 on socket 0 > > > > > > EAL: Detected lcore 2 as core 2 on socket 0 > > > > > > EAL: Detected lcore 3 as core 3 on socket 0 > > > > > > EAL: Detected lcore 4 as core 4 on socket 0 > > > > > > EAL: Detected lcore 5 as core 5 on socket 0 > > > > > > EAL: Detected lcore 6 as core 6 on socket 0 > > > > > > EAL: Detected lcore 7 as core 7 on socket 0 > > > > > > EAL: Support maximum 128 logical core(s) by configuration. > > > > > > EAL: Detected 8 lcore(s) > > > > > > EAL: Searching for IVSHMEM devices... > > > > > > EAL: No IVSHMEM configuration found! > > > > > > EAL: Setting up memory... > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > EAL: Virtual area found at 0x7fcca2c00000 (size = 0x200000) > > > > > > EAL: Ask a virtual area of 0x29400000 bytes > > > > > > EAL: Virtual area found at 0x7fcc79600000 (size = 0x29400000) > > > > > > EAL: Ask a virtual area of 0x400000 bytes > > > > > > EAL: Virtual area found at 0x7fcca3400000 (size = 0x400000) > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > EAL: Virtual area found at 0x7fcca3000000 (size = 0x200000) > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > EAL: Virtual area found at 0x7fcc79200000 (size = 0x200000) > > > > > > EAL: Ask a virtual area of 0x14d000000 bytes > > > > > > EAL: Virtual area found at 0x7fcb2c000000 (size = 0x14d000000) > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > EAL: Virtual area found at 0x7fcb2bc00000 (size = 0x200000) > > > > > > EAL: Requesting 3000 pages of size 2MB from socket 0 > > > > > > EAL: TSC frequency is ~2393997 KHz > > > > > > EAL: Master core 0 is ready (tid=a4ca2840) > > > > > > EAL: Core 1 is ready (tid=2bbff700) > > > > > > hello from core 1 > > > > > > hello from core 0 > > > > > > > > > > > > > > > > > > I want to run the l3fwd example app, per Appendix A.2 (pg 35-36) > in > > > the > > > > > > DPDK 1.2 Release Benchmark Test Report .pdf: > > > > > > *./build/l3fwd -c 0x6 -n 4 --socket-mem 1024,0 -- -p 0x3 > > > > > > -config="(0,0,1),(1,0,2)"* > > > > > > where the "-p option is the hexadecimal bit mask of the ports to > > > > > configure" > > > > > > > > > > > > I am running this command: > > > > > > > > > > > > *./build/l3fwd -c 0x3 -n 4 --socket-mem 1024,0 -- -p 0x3 > > > > > > --config="(0,0,0),(1,0,1)" --no-numa* > > > > > > > > > > > > EAL: Detected lcore 0 as core 0 on socket 0 > > > > > > > > > > > > EAL: Detected lcore 1 as core 1 on socket 0 > > > > > > > > > > > > EAL: Detected lcore 2 as core 2 on socket 0 > > > > > > > > > > > > EAL: Detected lcore 3 as core 3 on socket 0 > > > > > > > > > > > > EAL: Detected lcore 4 as core 4 on socket 0 > > > > > > > > > > > > EAL: Detected lcore 5 as core 5 on socket 0 > > > > > > > > > > > > EAL: Detected lcore 6 as core 6 on socket 0 > > > > > > > > > > > > EAL: Detected lcore 7 as core 7 on socket 0 > > > > > > > > > > > > EAL: Support maximum 128 logical core(s) by configuration. > > > > > > > > > > > > EAL: Detected 8 lcore(s) > > > > > > > > > > > > EAL: Searching for IVSHMEM devices... > > > > > > > > > > > > EAL: No IVSHMEM configuration found! > > > > > > > > > > > > EAL: Setting up memory... > > > > > > > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > > > > > > > EAL: Virtual area found at 0x7f3212600000 (size = 0x200000) > > > > > > > > > > > > EAL: Ask a virtual area of 0x29400000 bytes > > > > > > > > > > > > EAL: Virtual area found at 0x7f31e9000000 (size = 0x29400000) > > > > > > > > > > > > EAL: Ask a virtual area of 0x400000 bytes > > > > > > > > > > > > EAL: Virtual area found at 0x7f3212e00000 (size = 0x400000) > > > > > > > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > > > > > > > EAL: Virtual area found at 0x7f3212a00000 (size = 0x200000) > > > > > > > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > > > > > > > EAL: Virtual area found at 0x7f31e8c00000 (size = 0x200000) > > > > > > > > > > > > EAL: Ask a virtual area of 0x14d000000 bytes > > > > > > > > > > > > EAL: Virtual area found at 0x7f309ba00000 (size = 0x14d000000) > > > > > > > > > > > > EAL: Ask a virtual area of 0x200000 bytes > > > > > > > > > > > > EAL: Virtual area found at 0x7f309b600000 (size = 0x200000) > > > > > > > > > > > > EAL: Requesting 512 pages of size 2MB from socket 0 > > > > > > > > > > > > EAL: TSC frequency is ~2393998 KHz > > > > > > > > > > > > EAL: Master core 0 is ready (tid=14734840) > > > > > > > > > > > > EAL: Core 1 is ready (tid=e8bff700) > > > > > > > > > > > > numa is disabled > > > > > > > > > > > > port 0 is not present on the board > > > > > > > > > > > > EAL: Error - exiting with code: 1 > > > > > > > > > > > > Cause: check_port_config failed > > > > > > > > > > > > Perhaps the 0x3 (0011) hex portmask is incorrect? What Linux > > > command, or > > > > > > combination of commands, would help show the appropriate hex > > > portmask to > > > > > > use in my case? > > > > > > > > > > > > Thanks for your time, > > > > > > Lyn > > > > > > > > > > > I don't see the detection of any of your physical devices here. > I'm > > > > > guessing > > > > > your setup is just looking for ivshmem devices, which you won't > have > > > any > > > > > of in > > > > > FC20 unless you rebuild qemu. As such, dpdk doesn't see any ports, > > > which > > > > > is why > > > > > you're getting the error the results from portid 0 being greater > than > > > the > > > > > number > > > > > of detected ports on the system > > > > > > > > > > neil > > > > > > > > > > > > > >