[dpdk-dev] DPDK PDUMP Issue
Varghese, Vipin
vipin.varghese at intel.com
Wed Jul 29 11:56:29 CEST 2020
Couple more request,
1. please avoid ` NOT FROM AIRSPAN - Caution - External ` headers & banners.
2. If possible, use `snip` or `snipped` to remove clutter and bring foucs
Snipped
> Hi Dikshant,
>
> Looks like the custom Makefile log is quite different in passing DPDK CFLAGS
> and LDFLAGS. Also here are couple of surprises for me
>
> 1. Unable to find `make -n` logs
>
> 2. presence of g++ is present in each line
>
> 3. unable to find include option
>
> 4. request was to run `make -n` and cross the relevant libraries are bound
> within the `-Wl,--whole-archive` and `-Wl,--no-whole-archive `.
>
> 5. Unable to find `-Wl,-lpcap` passed for `-Wl,-lrte_pmd_pcap -Wl,-
> lrte_pdump`
>
> Hint: I normally take up sample like example/l2fwd and work towards to
> removing unwanted libraries while keeping the content and format intact for
> my custom makefile.
>
snipped
> >
> > Hi Vipin,
> >
> > I tried using `-Wl,--whole-archive` and `-Wl,--no-whole-archive `
> > option with my necessary libraries but it does not seem to help as well.
> >
> > Below is the makefile log for my app:
> >
> > g++ -shared -Wl,--export-dynamic packet_generator.o
> > g++ -L/mnt/data/dchitkara/DPDK_2020_01_30_x86/x86_64-native-linux-icc/
> > g++ li b -Wl,--whole-archive -Wl,-lrte_mempool_ring -Wl,-lrte_member
> > g++ -Wl,-lrte_eventdev -Wl,-lrte_pmd_pcap -Wl,-lrte_pdump
> > g++ -Wl,-lrte_bus_vmbus -Wl,-lrte_pci -Wl,-lrte_bus_pci
> > g++ -Wl,-lrte_bus_vdev -Wl,-lrte_net -Wl,-lrte_distributor
> > g++ -Wl,-lrte_reorder -Wl,-lrte_kni -Wl,-lrte_pipeline -Wl,-lrte_table
> > g++ -Wl,-lrte_port -Wl,-lrte_timer -Wl,-lrte_hash -Wl,-lrte_jobstats
> > g++ -Wl,-lrte_lpm -Wl,-lrte_power -Wl,-lrte_acl -Wl,-lrte_meter
> > g++ -Wl,-lrte_sched -Wl,-lm -Wl,-lrt -Wl,-lrte_vhost -Wl,--start-group
> > g++ -Wl,-lrte_kvargs -Wl,-lrte_mbuf -Wl,-lrte_ip_frag -Wl,-lrte_ethdev
> > g++ -Wl,-lrte_cryptodev -Wl,-lrte_mempool -Wl,-lrte_ring -Wl,-lrte_eal
> > g++ -Wl,-lrte_cmdline -Wl,-lrte_cfgfile -Wl,-lrte_pmd_bond
> > g++ -Wl,-lrte_pmd_vmxnet3_uio -Wl,-lrte_pmd_virtio -Wl,-lrte_pmd_cxgbe
> > g++ -Wl,-lrte_pmd_enic -Wl,-lrte_pmd_i40e -Wl,-lrte_pmd_fm10k
> > g++ -Wl,-lrte_pmd_ixgbe -Wl,-lrte_pmd_e1000 -Wl,-lrte_pmd_ring
> > g++ -Wl,-lrte_pmd_af_packet -Wl,-lrte_pmd_null -Wl,-lrt -Wl,-lm
> > g++ -Wl,-ldl -Wl,--end-group -Wl,--no-whole-archive -o
> > g++ ../../../COMMON/../bin/PACKET_GENERATOR_TEST_MOD.so
> >
> >
snipped
> >
> > > Hi Team,
> > >
> > > With fix suggest in prev mail thread at testpmd side, PDUMP works
> > > with testpmd.
> > >
> > > However when we try to run our own primary app with PDUMP as a
> > > secondary process, PDUMP console comes up, however it does not
> > > capture
> > any packets.
> > >
> > > Changes made at primary app side:
> > > 1. PDUMP initialised just after rte eal init:
> > >
> > > ret_pdump = rte_pdump_init();
> > > if (ret_pdump < 0) {
> > > printf("rte_pdump_init failed\n");
> > > }
> > > else
> > > {
> > > printf("rte_pdump_init success\n");
> > > }
> > >
> > > 2. Makefile modified to add all relevant files to be linked:
> > >
> > > LIB_SO =-L$(DPDK_LIB) -lrte_mbuf -lrte_eal -lnuma -lrte_pmd_pcap -
> > > lrte_pdump -lrte_pmd_i40e -lrte_eal -lrte_ring -lrte_mempool
> > > -lrte_cryptodev -lrte_ethdev -lrte_mbuf -lrte_mempool_ring
> > > -lrte_member -
> > lrte_eventdev -
> > > lrte_bus_vmbus -lrte_pci -lrte_bus_pci -lrte_bus_vdev -lrte_net -
> > > lrte_distributor -lrte_reorder -lrte_kni -lrte_pipeline
> > > -lrte_table -lrte_timer - lrte_hash -lrte_jobstats -lrte_lpm
> > > -lrte_power -lrte_acl -lrte_meter -lrte_sch
> > >
> > > Even tried to link final DPDK lib so as well:
> > > LIB_SO =-L$(DPDK_LIB) -Wl,--whole-archive -ldpdk -Wl,--no-whole-
> archive -
> > > L/usr/lib/x86_64-linux-gnu/ -fPIC
> >
> > Ok, I think I have seen similar outcomes in custom Makefiles. Can you
> > execute with `make -n` with the master Makefile and cross the
> > necessary libraries are in bound between `-Wl,--whole-archive` and
> > `-Wl,--no-whole-archive ` (specically for shared libraries).
> >
> > snipped
More information about the dev
mailing list