DPDK usage discussions
 help / color / mirror / Atom feed
From: Dikshant Chitkara <dchitkara@Airspan.com>
To: "Varghese, Vipin" <vipin.varghese@intel.com>,
	Stephen Hemminger <stephen@networkplumber.org>
Cc: "users@dpdk.org" <users@dpdk.org>, "dev@dpdk.org" <dev@dpdk.org>,
	"Amir Ilan" <ailan@Airspan.com>,
	Veeresh Patil <vpatil@Airspan.com>,
	Igor Shoihet <ishoihet@Airspan.com>
Subject: Re: [dpdk-users] [dpdk-dev] DPDK PDUMP Issue
Date: Wed, 29 Jul 2020 14:08:44 +0000	[thread overview]
Message-ID: <a0af5750c928492eaa053feec6477965@Airspan.com> (raw)
In-Reply-To: <BN8PR11MB381222E4FD9B6BDFBD699FBD90700@BN8PR11MB3812.namprd11.prod.outlook.com>

Hi Vipin,

Here is full log with include option and build with make -n option from master makefile as well:

make[2]: Entering directory `/mnt/data/dchitkara/PHY5G/Prototype/NR_5G_SIM/Tests/COMMON/PACKET_GENERATOR'
echo ./packet_generator.cc  -msse4.1  -I../../../COMMON/Sys_API/Math_API/  -I../../../COMMON/Sys_API/Math_API/  -I../../../COMMON/Sys_API/Module_API/    -I../../../COMMON/Sys_API/common_intel/ 
echo packet_generator.o
test -d  || mkdir -p  
g++  -msse4.1  -I../../../COMMON/Sys_API/Math_API/  -I../../../COMMON/Sys_API/Math_API/  -I../../../COMMON/Sys_API/Module_API -I./ -DTIME_DATE=\"DATE:29/07/20_TIME:09:57:19\" -DMOD_NAME=\"PACKET_GENERATOR_TEST_MOD\"  -DARCH_X86 -I/mnt/data/dchitkara/DPDK_2020_01_30_x86/x86_64-native-linux-icc/include -I -DAS_INFRA_NULL=0 -DEMULATOR_MODE  -DINTEL -std=c++11  -D_4x4_ -O3 -g -DDEBUG   -fPIC -c ./packet_generator.cc
echo /usr/local/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/pstl/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/tbb/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/tbb/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/ipp/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/mkl/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/ipp/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/mkl/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/pstl/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/tbb/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/tbb/include:/opt/intel/system_studio_2019/compilers_and_libraries_2019.2.187/linux/daal/include
echo packet_generator.o 
test -d ../../../COMMON/../bin || mkdir -p ../../../COMMON/../bin 
g++ -shared -Wl,--export-dynamic packet_generator.o  -L/mnt/data/dchitkara/DPDK_2020_01_30_x86/x86_64-native-linux-icc/lib -Wl,--whole-archive -Wl,-lrte_mempool_ring -Wl,-lrte_member -Wl,-lrte_eventdev -Wl,-lpcap -Wl,-lrte_pmd_pcap -Wl,-lrte_pdump -Wl,-lrte_bus_vmbus -Wl,-lrte_pci -Wl,-lrte_bus_pci -Wl,-lrte_bus_vdev -Wl,-lrte_net -Wl,-lrte_distributor -Wl,-lrte_reorder -Wl,-lrte_kni -Wl,-lrte_pipeline -Wl,-lrte_table -Wl,-lrte_port -Wl,-lrte_timer -Wl,-lrte_hash -Wl,-lrte_jobstats -Wl,-lrte_lpm -Wl,-lrte_power -Wl,-lrte_acl -Wl,-lrte_meter -Wl,-lrte_sched -Wl,-lm -Wl,-lrt -Wl,-lrte_vhost -Wl,--start-group -Wl,-lrte_kvargs -Wl,-lrte_mbuf -Wl,-lrte_ip_frag -Wl,-lrte_ethdev -Wl,-lrte_cryptodev -Wl,-lrte_mempool -Wl,-lrte_ring -Wl,-lrte_eal -Wl,-lrte_cmdline -Wl,-lrte_cfgfile -Wl,-lrte_pmd_bond -Wl,-lrte_pmd_vmxnet3_uio -Wl,-lrte_pmd_virtio -Wl,-lrte_pmd_cxgbe -Wl,-lrte_pmd_enic -Wl,-lrte_pmd_i40e -Wl,-lrte_pmd_fm10k -Wl,-lrte_pmd_ixgbe -Wl,-lrte_pmd_e1000 -Wl,-lrte_pmd_ring -Wl,-lrte_pmd_af_packet -Wl,-lrte_pmd_null -Wl,-lrt -Wl,-lm -Wl,-ldl -Wl,--end-group -Wl,--no-whole-archive  -o ../../../COMMON/../bin/PACKET_GENERATOR_TEST_MOD.so
make[2]: Leaving directory `/mnt/data/dchitkara/PHY5G/Prototype/NR_5G_SIM/Tests/COMMON/PACKET_GENERATOR'

Please have a note that module we are running is just one part of our CPP project treated as a separate test module.

Thanks,
Dikshant

-----Original Message-----
From: Varghese, Vipin <vipin.varghese@intel.com> 
Sent: 29 July 2020 15:21
To: Dikshant Chitkara <dchitkara@Airspan.com>; Stephen Hemminger <stephen@networkplumber.org>
Cc: users@dpdk.org; dev@dpdk.org; Amir Ilan <ailan@Airspan.com>; Veeresh Patil <vpatil@Airspan.com>
Subject: RE: [dpdk-dev] DPDK PDUMP Issue

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. 

> -----Original Message-----
> From: Dikshant Chitkara <dchitkara@Airspan.com>
> Sent: Wednesday, July 29, 2020 2:44 PM
> To: Varghese, Vipin <vipin.varghese@intel.com>; Stephen Hemminger 
> <stephen@networkplumber.org>
> Cc: users@dpdk.org; dev@dpdk.org; Amir Ilan <ailan@Airspan.com>; 
> Veeresh Patil <vpatil@Airspan.com>
> Subject: RE: [dpdk-dev] DPDK PDUMP Issue
> 
> 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
> 
> 
> Thanks,
> Dikshant
> 
> 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

  parent reply	other threads:[~2020-07-30 23:56 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-14  8:40 [dpdk-users] " Dikshant Chitkara
2020-07-14 16:29 ` [dpdk-users] [dpdk-dev] " Stephen Hemminger
2020-07-22  4:08   ` Varghese, Vipin
2020-07-28 14:51     ` Dikshant Chitkara
2020-07-28 16:23       ` Stephen Hemminger
2020-07-28 16:41         ` Dikshant Chitkara
2020-07-28 17:03           ` Stephen Hemminger
2020-07-28 17:08             ` Dikshant Chitkara
2020-07-29  0:59       ` Varghese, Vipin
2020-07-29  9:14         ` Dikshant Chitkara
2020-07-29  9:51           ` Varghese, Vipin
2020-07-29  9:56             ` Varghese, Vipin
2020-07-29 14:08             ` Dikshant Chitkara [this message]
2020-07-30  2:35               ` Varghese, Vipin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a0af5750c928492eaa053feec6477965@Airspan.com \
    --to=dchitkara@airspan.com \
    --cc=ailan@Airspan.com \
    --cc=dev@dpdk.org \
    --cc=ishoihet@Airspan.com \
    --cc=stephen@networkplumber.org \
    --cc=users@dpdk.org \
    --cc=vipin.varghese@intel.com \
    --cc=vpatil@Airspan.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).