[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-03 Thread Jayakumar, Muthurajan
Markuze Cc: dev at dpdk.org Subject: Re: [dpdk-dev] Debugging EAL PCI / Driver Init There is an option in the DPDK build config which compiles every DPDK lib into a single static lib. I don't have the name of the option in front of me but it had COMBINE in its name. When this option is used yo

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-03 Thread Alex Markuze
Resolved just as Matt has described. To remove any ambiguity (for future reference). This line in the gcc command resolves the issue in my case (a different nic may need a different lib): --whole-archive -Wl,--start-group -lrte_pmd_ixgbe -Wl,--end-group -Wl, The problem is that the probe command

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-03 Thread Matthew Hall
Alex Markuze >Cc: dev at dpdk.org >Subject: Re: [dpdk-dev] Debugging EAL PCI / Driver Init > >There is an option in the DPDK build config which compiles every DPDK >lib into a single static lib. I don't have the name of the option in >front of me but it had COMBINE in its name. When

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-03 Thread Alex Markuze
Hi Matt, Dev I'm Trying to compile ann app linking to dpdk and dpdk based libs. And I'm seeing the same issue you've reported. The probe function doesn't seem to find any ixgbevf(SRIOV VM) ports. Same code compiled as a dpdk app works fine. In your solution to this issue you are referring to -lin

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-03 Thread Matthew Hall
There is an option in the DPDK build config which compiles every DPDK lib into a single static lib. I don't have the name of the option in front of me but it had COMBINE in its name. When this option is used you can get every function in the whole DPDK with a single library. After that I had a l

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-02 Thread Matthew Hall
On Sun, Aug 03, 2014 at 01:37:06AM +0900, Masaru Oki wrote: > cc links library funtion from archive only if call from other object. > but new dpdk pmd library has constractor section and not call directly. > ld always links library funtion with constractor section. > use -Xlinker, or use ld instead

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-02 Thread Matthew Hall
Also, when using the separate libraries the problem still happens: -lethdev -lrte_cfgfile -lrte_cmdline -lrte_distributor -lrte_hash -lrte_ip_frag -lrte_lpm -lrte_malloc -lrte_mbuf -lrte_mempool -lrte_pmd_e1000 -lrte_pmd_pcap -lrte_pmd_virtio_uio -lrte_pmd_vmxnet3_uio -lrte_port -lrte_ring -lrt

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-02 Thread Matthew Hall
I did a bit more experimentation and found the following. If I unmark the rte_igb_pmd_init function as static, and call it directly from my code, the driver will load, and the port count increments to 2: EAL: PCI device :01:00.0 on NUMA socket -1 EAL: probe driver: 8086:1521 rte_igb_pmd EA

[dpdk-dev] Debugging EAL PCI / Driver Init

2014-08-01 Thread Matthew Hall
Hello, I am running into a problem where Eth driver init works fine in a sample app and finds my NICs, and the NICs appear in rte_eal_pci_dump(stdout) but they don't show up in rte_eth_dev_count() even after rte_eal_pci_probe() is called the same as the sample apps, so my app won't boot. I hav