* [dpdk-users] Need help understanding rte_eth_dev_count @ 2016-10-12 4:44 Aniraj Kesavan [not found] ` <CAOysbxpmme2xHxi5SVUi1ZO3KDz+jWvsu_7b_AmMmXNHrkRO3g@mail.gmail.com> 0 siblings, 1 reply; 5+ messages in thread From: Aniraj Kesavan @ 2016-10-12 4:44 UTC (permalink / raw) To: users Hi, I'm very new to dpdk and I'm trying to set it up on a cluster with the following configuration: DPDK - 16.07 Intel X710 2x10G Nics Ubuntu 15.04 I could compile it, but when running sample applications such as skeleton/basicfwd and testpmd, it fails saying the ports aren't detected. I have done the following: enabled 1G huge pages and mounted them under /dev/hugepages ran dpdk-devbind.py on the interfaces after which the status shows: Network devices using DPDK-compatible driver ============================================ 0000:04:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused= 0000:04:00.1 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused= While running gdb over the basicfwd application (run as sudo as it seemed like a requirement), it seems like rte_eth_dev_count is returning 0. Even the testpmd application is reporting no ports available. I have tried the portmask option and tried to pass the interfaces as -w arguments too. When I looked at rte_eth_dev_count, it's returning an unsigned static int that is only updated by rte_eth_dev_allocate. Following the breadcrumbs, it seemed like someone needed to invoke rte_eth_dev_register. I didn't see that being called in the basicfwd example's codepath. Can anyone tell me what usually causes rte_eth_dev_register to run and update the port number? Or is there anything I might have missed in the configuration that's causing the device to not show up when the library is looking for it. Thanks, Aniraj -- Aniraj Kesavan MS CS '15-'17, University Of Utah CS '08-'12, Govt. Model Engineering College alternate e-mail:anirajkalathel@gmail.com http://www.cs.utah.edu/~aniraj/ ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <CAOysbxpmme2xHxi5SVUi1ZO3KDz+jWvsu_7b_AmMmXNHrkRO3g@mail.gmail.com>]
* Re: [dpdk-users] Need help understanding rte_eth_dev_count [not found] ` <CAOysbxpmme2xHxi5SVUi1ZO3KDz+jWvsu_7b_AmMmXNHrkRO3g@mail.gmail.com> @ 2016-10-12 17:47 ` Aniraj Kesavan 2016-10-13 6:01 ` Muhammad Zain-ul-Abideen 0 siblings, 1 reply; 5+ messages in thread From: Aniraj Kesavan @ 2016-10-12 17:47 UTC (permalink / raw) To: Andriy Berestovskyy; +Cc: users I did follow the i40e instructions to startup testpmd application. My pci id for the X710 is 0000:04:00.0. I did sudo python ./tools/dpdk-devbind.py --bind igb_uio 0000:04:00.0 to bind after which it started up showing in dev-bind status. Network devices using DPDK-compatible driver ============================================ 0000:04:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused= WhWhWhs When I try to run testpmd, I don't see my pci device listed and it's not probed, it directly tries to probe VFIO support. This is the output when I run testpmd. anirajk@node-0:/local/RAMCloud/dpdk$ sudo LD_LIBRARY_PATH=/local/RAMCloud/dpdk/x86_64-native-linuxapp-gcc/lib ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 04:00.0 -- -i EAL: Detected 32 lcore(s) EAL: No free hugepages reported in hugepages-2048kB EAL: Probing VFIO support... EAL: WARNING: Master core has no memory on local socket! EAL: No probed ethernet devices Interactive-mode selected USER1: create a new mbuf pool <mbuf_pool_socket_0>: n=171456, size=2176, socket=0 EAL: Error - exiting with code: 1 Cause: Creation of mbuf pool for socket 0 failed: Cannot allocate memory Dmesg popped up this: [Oct12 11:26] igb_uio: Use MSIX interrupt by default [Oct12 11:27] i40e 0000:04:00.0: removed PHC from eth6 [ +0.024267] igb_uio 0000:04:00.0: uio device registered with irq 4d [Oct12 11:29] Bits 55-60 of /proc/PID/pagemap entries are about to stop being page-shift some time soon. See the linux/Documentation/vm/pagemap.txt for details. I'm running with sudo and have 1GB hugepages enabled and mounted. What other reasons could possibly prevent the pci device from not being recognised while testpmd is starting up? On Wed, Oct 12, 2016 at 1:36 AM, Andriy Berestovskyy <aber@semihalf.com> wrote: > Hey, > In 16.07 the PMDs drivers get register using the PMD_REGISTER_DRIVER(): > http://dpdk.org/browse/dpdk/tree/lib/librte_eal/common/ > include/rte_dev.h?id=v16.07#n187 > > The macro uses constructor attribute, so the drivers get registered > during the application startup, prior the main() function. > > > Regarding the configuration, try to reproduce the steps listed in the > documentation: > http://dpdk.org/doc/guides/nics/i40e.html > > Andriy > > > On Wed, Oct 12, 2016 at 6:44 AM, Aniraj Kesavan <anirajkesavan@gmail.com> > wrote: > > Hi, > > > > I'm very new to dpdk and I'm trying to set it up on a cluster with the > > following configuration: > > DPDK - 16.07 > > Intel X710 2x10G Nics > > Ubuntu 15.04 > > > > I could compile it, but when running sample applications such as > > skeleton/basicfwd and testpmd, it fails saying the ports aren't detected. > > > > I have done the following: > > enabled 1G huge pages and mounted them under /dev/hugepages > > ran dpdk-devbind.py on the interfaces after which the status shows: > > > > Network devices using DPDK-compatible driver > > ============================================ > > 0000:04:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio > unused= > > 0000:04:00.1 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio > unused= > > > > While running gdb over the basicfwd application (run as sudo as it seemed > > like a requirement), it seems like rte_eth_dev_count is returning 0. Even > > the testpmd application is reporting no ports available. I have tried the > > portmask option and tried to pass the interfaces as -w arguments too. > > > > When I looked at rte_eth_dev_count, it's returning an unsigned static int > > that is only updated by rte_eth_dev_allocate. Following the breadcrumbs, > it > > seemed like someone needed to invoke rte_eth_dev_register. I didn't see > > that being called in the basicfwd example's codepath. > > > > Can anyone tell me what usually causes rte_eth_dev_register to run and > > update the port number? Or is there anything I might have missed in the > > configuration that's causing the device to not show up when the library > is > > looking for it. > > > > > > > > Thanks, > > Aniraj > > > > > > > > -- > > Aniraj Kesavan > > > > MS CS '15-'17, > > University Of Utah > > CS '08-'12, > > Govt. Model Engineering College > > alternate e-mail:anirajkalathel@gmail.com > > http://www.cs.utah.edu/~aniraj/ > > > > -- > Andriy Berestovskyy > -- Aniraj Kesavan MS CS '15-'17, University Of Utah CS '08-'12, Govt. Model Engineering College alternate e-mail:anirajkalathel@gmail.com http://www.cs.utah.edu/~aniraj/ ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-users] Need help understanding rte_eth_dev_count 2016-10-12 17:47 ` Aniraj Kesavan @ 2016-10-13 6:01 ` Muhammad Zain-ul-Abideen 2016-10-13 6:12 ` Aniraj Kesavan 0 siblings, 1 reply; 5+ messages in thread From: Muhammad Zain-ul-Abideen @ 2016-10-13 6:01 UTC (permalink / raw) To: Aniraj Kesavan; +Cc: Andriy Berestovskyy, users *"EAL: No free hugepages reported in hugepages-2048kB" * No huge pages are available, kindly restart your server, and re do the installation, plus tell me where the huge pages are being made. and if this is a valid address in ur case "*/sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages*" ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-users] Need help understanding rte_eth_dev_count 2016-10-13 6:01 ` Muhammad Zain-ul-Abideen @ 2016-10-13 6:12 ` Aniraj Kesavan 2016-10-13 6:17 ` Muhammad Zain-ul-Abideen 0 siblings, 1 reply; 5+ messages in thread From: Aniraj Kesavan @ 2016-10-13 6:12 UTC (permalink / raw) To: Muhammad Zain-ul-Abideen; +Cc: Andriy Berestovskyy, users I have 1GB hugepages enabled and mounted, in fact I had traced through gdb to find out that hugepage_init succeeds. Or is it necessary to have 2MB hugepages in particular? One thing I did notice is that I wasn't unbinding the devices properly. I had to do them manually writing pci device ids to unbind location. Even after that, I'm finding issues. I also figured out that since I was building as a shared library, I needed to pass -d <lib location> as a command line parameter. Even after doing that, I'm getting the same errors. On Thu, Oct 13, 2016 at 12:01 AM, Muhammad Zain-ul-Abideen < zain2294@gmail.com> wrote: > *"EAL: No free hugepages reported in hugepages-2048kB" * > No huge pages are available, kindly restart your server, and re do the > installation, plus tell me where the huge pages are being made. > and if this is a valid address in ur case > "*/sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages*" > -- Aniraj Kesavan MS CS '15-'17, University Of Utah CS '08-'12, Govt. Model Engineering College alternate e-mail:anirajkalathel@gmail.com http://www.cs.utah.edu/~aniraj/ ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-users] Need help understanding rte_eth_dev_count 2016-10-13 6:12 ` Aniraj Kesavan @ 2016-10-13 6:17 ` Muhammad Zain-ul-Abideen 0 siblings, 0 replies; 5+ messages in thread From: Muhammad Zain-ul-Abideen @ 2016-10-13 6:17 UTC (permalink / raw) To: Aniraj Kesavan; +Cc: Andriy Berestovskyy, users kindly keep the basic command the same and u can change the number of hugepages from 64 to ur liking, do that and respond with results kindly ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-10-13 6:17 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2016-10-12 4:44 [dpdk-users] Need help understanding rte_eth_dev_count Aniraj Kesavan [not found] ` <CAOysbxpmme2xHxi5SVUi1ZO3KDz+jWvsu_7b_AmMmXNHrkRO3g@mail.gmail.com> 2016-10-12 17:47 ` Aniraj Kesavan 2016-10-13 6:01 ` Muhammad Zain-ul-Abideen 2016-10-13 6:12 ` Aniraj Kesavan 2016-10-13 6:17 ` Muhammad Zain-ul-Abideen
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).