test suite reviews and discussions
 help / color / mirror / Atom feed
* [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test
@ 2020-05-12  5:58 Xiao Qimai
  2020-05-12  5:58 ` [dts] [PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update Xiao Qimai
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Xiao Qimai @ 2020-05-12  5:58 UTC (permalink / raw)
  To: dts; +Cc: Xiao Qimai

*. update compile cmd of app/test according to dpdk's update

Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
---
 tests/TestSuite_unit_tests_loopback.py | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/tests/TestSuite_unit_tests_loopback.py b/tests/TestSuite_unit_tests_loopback.py
index 68b1f30..c1d37b2 100644
--- a/tests/TestSuite_unit_tests_loopback.py
+++ b/tests/TestSuite_unit_tests_loopback.py
@@ -70,6 +70,8 @@ class TestUnitTestsLoopback(TestCase):
         self.verify(self.arch in ["x86_64", "arm64"], "pmd perf request running in x86_64 or arm64")
         self.max_traffic_burst = self.get_max_traffic_burst()
         self.dut.send_expect("sed -i -e 's/#define MAX_TRAFFIC_BURST              %s/#define MAX_TRAFFIC_BURST              32/' app/test/test_pmd_perf.c" % self.max_traffic_burst, "# ", 30)
+        self.tmp_path = '/tmp/test_pmd_perf.c'
+        self.dut.send_expect("cp app/test/test_pmd_perf.c %s" % self.tmp_path, "# ")
 
     def set_up(self):
         """
@@ -90,14 +92,14 @@ class TestUnitTestsLoopback(TestCase):
         Run pmd stream control mode burst test case.
         """
         self.dut.send_expect("sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/' app/test/test_pmd_perf.c", "# ", 30)
-        out = self.dut.build_dpdk_apps('app/test')
-        self.verify("Error" not in out, "Compilation error")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
         self.verify("No such" not in out, "Compilation error")
 
         self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
-        self.tester.send_expect("tcpdump -i %s -w ./getPackageByTcpdump.cap 2> /dev/null& " % self.tester_itf, "#")
+        self.tester.send_expect("tcpdump -i %s ether[12:2] != '0x88cc' -w ./getPackageByTcpdump.cap 2> /dev/null& " % self.tester_itf, "#")
         eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        self.dut.send_expect("./app/test/test %s" % (eal_params), "R.*T.*E.*>.*>", 60)
+        self.dut.send_expect("./%s/app/test %s" % (self.target, eal_params), "R.*T.*E.*>.*>", 60)
         out = self.dut.send_expect("pmd_perf_autotest", "RTE>>", 120)
         print(out)
         self.dut.send_expect("quit", "# ")
@@ -113,14 +115,14 @@ class TestUnitTestsLoopback(TestCase):
         """
         self.dut.send_expect("sed -i -e 's/lpbk_mode = 1/lpbk_mode = 0/' app/test/test_pmd_perf.c", "# ", 30)
         self.dut.send_expect("sed -i -e '/check_all_ports_link_status(nb_ports, RTE_PORT_ALL);/a\        sleep(6);' app/test/test_pmd_perf.c", "# ", 30)
-        out = self.dut.build_dpdk_apps('app/test')
-        self.verify("Error" not in out, "Compilation error")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
         self.verify("No such" not in out, "Compilation error")
 
         self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
         self.tester.send_expect("tcpdump -i %s -w ./getPackageByTcpdump.cap 2> /dev/null& " % self.tester_itf, "#")
         eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        self.dut.send_expect("./app/test/test %s" % (eal_params), "R.*T.*E.*>.*>", 60)
+        self.dut.send_expect("./%s/app/test %s" % (self.target, eal_params), "R.*T.*E.*>.*>", 60)
         self.dut.send_command("pmd_perf_autotest", 30)
         # There is no packet loopback, so the test is hung.
         # It needs to kill the process manually.
@@ -133,16 +135,16 @@ class TestUnitTestsLoopback(TestCase):
         """
         Run after each test case.
         """
+        self.dut.send_expect("cp %s app/test/test_pmd_perf.c" % self.tmp_path, "# ")
         self.dut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/' app/test/test_pmd_perf.c", "# ", 30)
-        self.dut.send_expect("sed -i -e '/sleep(6)/d' app/test/test_pmd_perf.c", "# ", 30)
+        self.dut.send_expect("cp %s app/test/test_pmd_perf.c" % self.tmp_path, "# ")
         self.dut.send_expect("sed -i -e 's/#define MAX_TRAFFIC_BURST              32/#define MAX_TRAFFIC_BURST              %s/' app/test/test_pmd_perf.c" % self.max_traffic_burst, "# ", 30)
-        out = self.dut.build_dpdk_apps('app/test')
-        self.verify("Error" not in out, "Compilation error")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
         self.verify("No such" not in out, "Compilation error")
         self.dut.kill_all()
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [dts] [PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update
  2020-05-12  5:58 [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test Xiao Qimai
@ 2020-05-12  5:58 ` Xiao Qimai
  2020-05-12  6:09   ` Xiao, QimaiX
  2020-05-12  6:11 ` [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test Xiao, QimaiX
  2020-06-02  5:47 ` Tu, Lijuan
  2 siblings, 1 reply; 5+ messages in thread
From: Xiao Qimai @ 2020-05-12  5:58 UTC (permalink / raw)
  To: dts; +Cc: Xiao Qimai

*. replace compile command of app/test with new command

Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
---
 tests/TestSuite_unit_tests_pmd_perf.py | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/tests/TestSuite_unit_tests_pmd_perf.py b/tests/TestSuite_unit_tests_pmd_perf.py
index a01cf4e..3f4ed12 100644
--- a/tests/TestSuite_unit_tests_pmd_perf.py
+++ b/tests/TestSuite_unit_tests_pmd_perf.py
@@ -71,13 +71,17 @@ class TestUnitTestsPmdPerf(TestCase):
         [arch, machine, _, toolchain] = self.target.split('-')
         self.dut.send_expect("sed -i -e 's/CONFIG_RTE_IXGBE_INC_VECTOR=y/CONFIG_RTE_IXGBE_INC_VECTOR=n/' config/common_base", "# ", 30)
         self.dut.build_install_dpdk(self.target)
-        out = self.dut.build_dpdk_apps('./app/test/')
-        self.verify('make: Leaving directory' in out, "Compilation failed")
-        self.dut.send_expect("mv -f ./app/test/test ./app/test/test_scalar", "# ")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
+        self.verify("No such" not in out, "Compilation error")
+        self.dut.send_expect("mv -f ./%s/app/test ./app/test/test_scalar" % self.target, "# ")
+
         self.dut.send_expect("sed -i -e 's/CONFIG_RTE_IXGBE_INC_VECTOR=n/CONFIG_RTE_IXGBE_INC_VECTOR=y/' config/common_base", "# ", 30)
         self.dut.build_install_dpdk(self.target)
-        out = self.dut.build_dpdk_apps('./app/test/')
-        self.verify('make: Leaving directory' in out, "Compilation failed")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
+        self.verify("No such" not in out, "Compilation error")
+        self.dut.send_expect("mv -f ./%s/app/test ./app/test/test" % self.target, "# ")
         socket_id = self.dut.ports_info[0]['port'].socket
         self.cores = self.dut.get_core_list(config='1S/4C/1T', socket=socket_id)
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dts] [PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update
  2020-05-12  5:58 ` [dts] [PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update Xiao Qimai
@ 2020-05-12  6:09   ` Xiao, QimaiX
  0 siblings, 0 replies; 5+ messages in thread
From: Xiao, QimaiX @ 2020-05-12  6:09 UTC (permalink / raw)
  To: dts


[-- Attachment #1.1: Type: text/plain, Size: 2515 bytes --]

Tested-by:Xiao Qimai <qimaix.xiao@intel.com>
________________________________
From: Xiao, QimaiX <qimaix.xiao@intel.com>
Sent: Tuesday, May 12, 2020 1:58 PM
To: dts@dpdk.org <dts@dpdk.org>
Cc: Xiao, QimaiX <qimaix.xiao@intel.com>
Subject: [dts][PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update

*. replace compile command of app/test with new command

Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
---
 tests/TestSuite_unit_tests_pmd_perf.py | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/tests/TestSuite_unit_tests_pmd_perf.py b/tests/TestSuite_unit_tests_pmd_perf.py
index a01cf4e..3f4ed12 100644
--- a/tests/TestSuite_unit_tests_pmd_perf.py
+++ b/tests/TestSuite_unit_tests_pmd_perf.py
@@ -71,13 +71,17 @@ class TestUnitTestsPmdPerf(TestCase):
         [arch, machine, _, toolchain] = self.target.split('-')
         self.dut.send_expect("sed -i -e 's/CONFIG_RTE_IXGBE_INC_VECTOR=y/CONFIG_RTE_IXGBE_INC_VECTOR=n/' config/common_base", "# ", 30)
         self.dut.build_install_dpdk(self.target)
-        out = self.dut.build_dpdk_apps('./app/test/')
-        self.verify('make: Leaving directory' in out, "Compilation failed")
-        self.dut.send_expect("mv -f ./app/test/test ./app/test/test_scalar", "# ")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
+        self.verify("No such" not in out, "Compilation error")
+        self.dut.send_expect("mv -f ./%s/app/test ./app/test/test_scalar" % self.target, "# ")
+
         self.dut.send_expect("sed -i -e 's/CONFIG_RTE_IXGBE_INC_VECTOR=n/CONFIG_RTE_IXGBE_INC_VECTOR=y/' config/common_base", "# ", 30)
         self.dut.build_install_dpdk(self.target)
-        out = self.dut.build_dpdk_apps('./app/test/')
-        self.verify('make: Leaving directory' in out, "Compilation failed")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
+        self.verify("No such" not in out, "Compilation error")
+        self.dut.send_expect("mv -f ./%s/app/test ./app/test/test" % self.target, "# ")
         socket_id = self.dut.ports_info[0]['port'].socket
         self.cores = self.dut.get_core_list(config='1S/4C/1T', socket=socket_id)

--
1.8.3.1


[-- Attachment #1.2: Type: text/html, Size: 4876 bytes --]

[-- Attachment #2: TestUnitTestsPmdPerf.log --]
[-- Type: application/octet-stream, Size: 137245 bytes --]

12/05/2020 13:36:18                            dts: 
TEST SUITE : TestUnitTestsPmdPerf
12/05/2020 13:36:18                            dts: NIC :        sagepond
12/05/2020 13:36:18             dut.10.240.183.202: 
12/05/2020 13:36:18                         tester: 
12/05/2020 13:36:18             dut.10.240.183.202: sed -i -e 's/CONFIG_RTE_IXGBE_INC_VECTOR=y/CONFIG_RTE_IXGBE_INC_VECTOR=n/' config/common_base
12/05/2020 13:36:18             dut.10.240.183.202: 
12/05/2020 13:36:18             dut.10.240.183.202: sed -i 's/CONFIG_RTE_EAL_IGB_UIO=n/CONFIG_RTE_EAL_IGB_UIO=y/g' config/common_base
12/05/2020 13:36:18             dut.10.240.183.202: 
12/05/2020 13:36:18             dut.10.240.183.202: rm -rf x86_64-native-linuxapp-gcc
12/05/2020 13:36:18             dut.10.240.183.202: 
12/05/2020 13:36:18             dut.10.240.183.202: rm -rf ./app/test/test_resource_c.res.o
12/05/2020 13:36:18             dut.10.240.183.202: 
12/05/2020 13:36:18             dut.10.240.183.202: rm -rf ./app/test/test_resource_tar.res.o
12/05/2020 13:36:19             dut.10.240.183.202: 
12/05/2020 13:36:19             dut.10.240.183.202: rm -rf ./app/test/test_pci_sysfs.res.o
12/05/2020 13:36:19             dut.10.240.183.202: 
12/05/2020 13:36:19             dut.10.240.183.202: make -j 14 install T=x86_64-native-linuxapp-gcc 
12/05/2020 13:40:18             dut.10.240.183.202: Configuration done using x86_64-native-linuxapp-gcc
== Build lib
== Build lib/librte_kvargs
== Build lib/librte_telemetry
  SYMLINK-FILE include/rte_telemetry.h
  SYMLINK-FILE include/rte_kvargs.h
  CC telemetry.o
  CC telemetry_data.o
  CC telemetry_legacy.o
  CC rte_kvargs.o
  AR librte_kvargs.a
  INSTALL-LIB librte_kvargs.a
  AR librte_telemetry.a
  INSTALL-LIB librte_telemetry.a
== Build lib/librte_eal
== Build lib/librte_eal/include
  SYMLINK-FILE include/rte_alarm.h
  SYMLINK-FILE include/rte_bitmap.h
  SYMLINK-FILE include/rte_branch_prediction.h
  SYMLINK-FILE include/rte_bus.h
  SYMLINK-FILE include/rte_class.h
  SYMLINK-FILE include/rte_common.h
  SYMLINK-FILE include/rte_compat.h
  SYMLINK-FILE include/rte_debug.h
  SYMLINK-FILE include/rte_devargs.h
  SYMLINK-FILE include/rte_dev.h
  SYMLINK-FILE include/rte_eal.h
  SYMLINK-FILE include/rte_eal_interrupts.h
  SYMLINK-FILE include/rte_eal_memconfig.h
  SYMLINK-FILE include/rte_eal_trace.h
  SYMLINK-FILE include/rte_errno.h
  SYMLINK-FILE include/rte_fbarray.h
  SYMLINK-FILE include/rte_function_versioning.h
  SYMLINK-FILE include/rte_hexdump.h
  SYMLINK-FILE include/rte_hypervisor.h
  SYMLINK-FILE include/rte_interrupts.h
  SYMLINK-FILE include/rte_keepalive.h
  SYMLINK-FILE include/rte_launch.h
  SYMLINK-FILE include/rte_lcore.h
  SYMLINK-FILE include/rte_log.h
  SYMLINK-FILE include/rte_malloc.h
  SYMLINK-FILE include/rte_memory.h
  SYMLINK-FILE include/rte_memzone.h
  SYMLINK-FILE include/rte_pci_dev_feature_defs.h
  SYMLINK-FILE include/rte_pci_dev_features.h
  SYMLINK-FILE include/rte_per_lcore.h
  SYMLINK-FILE include/rte_random.h
  SYMLINK-FILE include/rte_reciprocal.h
  SYMLINK-FILE include/rte_service.h
  SYMLINK-FILE include/rte_service_component.h
  SYMLINK-FILE include/rte_string_fns.h
  SYMLINK-FILE include/rte_tailq.h
  SYMLINK-FILE include/rte_test.h
  SYMLINK-FILE include/rte_time.h
  SYMLINK-FILE include/rte_trace.h
  SYMLINK-FILE include/rte_trace_point.h
  SYMLINK-FILE include/rte_trace_point_register.h
  SYMLINK-FILE include/rte_uuid.h
  SYMLINK-FILE include/rte_version.h
  SYMLINK-FILE include/rte_vfio.h
  SYMLINK-FILE include/rte_atomic.h
  SYMLINK-FILE include/rte_atomic_32.h
  SYMLINK-FILE include/rte_atomic_64.h
  SYMLINK-FILE include/rte_byteorder.h
  SYMLINK-FILE include/rte_byteorder_32.h
  SYMLINK-FILE include/rte_byteorder_64.h
  SYMLINK-FILE include/rte_cpuflags.h
  SYMLINK-FILE include/rte_cycles.h
  SYMLINK-FILE include/rte_io.h
  SYMLINK-FILE include/rte_mcslock.h
  SYMLINK-FILE include/rte_memcpy.h
  SYMLINK-FILE include/rte_pause.h
  SYMLINK-FILE include/rte_prefetch.h
  SYMLINK-FILE include/rte_rtm.h
  SYMLINK-FILE include/rte_rwlock.h
  SYMLINK-FILE include/rte_spinlock.h
  SYMLINK-FILE include/rte_ticketlock.h
  SYMLINK-FILE include/rte_vect.h
  SYMLINK-FILE include/generic/rte_atomic.h
  SYMLINK-FILE include/generic/rte_byteorder.h
  SYMLINK-FILE include/generic/rte_cpuflags.h
  SYMLINK-FILE include/generic/rte_cycles.h
  SYMLINK-FILE include/generic/rte_io.h
  SYMLINK-FILE include/generic/rte_mcslock.h
  SYMLINK-FILE include/generic/rte_memcpy.h
  SYMLINK-FILE include/generic/rte_pause.h
  SYMLINK-FILE include/generic/rte_prefetch.h
  SYMLINK-FILE include/generic/rte_rwlock.h
  SYMLINK-FILE include/generic/rte_spinlock.h
  SYMLINK-FILE include/generic/rte_ticketlock.h
  SYMLINK-FILE include/generic/rte_vect.h
== Build lib/librte_eal/linux
  SYMLINK-FILE include/rte_kni_common.h
  SYMLINK-FILE include/rte_os.h
  CC eal.o
  CC eal_cpuflags.o
  CC eal_hugepage_info.o
  CC eal_memory.o
  CC eal_thread.o
  CC eal_log.o
  CC eal_vfio.o
  CC eal_vfio_mp_sync.o
  CC eal_memalloc.o
  CC eal_debug.o
  CC eal_lcore.o
  CC eal_timer.o
  CC eal_interrupts.o
  CC eal_alarm.o
  CC eal_dev.o
  CC eal_common_lcore.o
  CC eal_common_timer.o
  CC eal_common_memzone.o
  CC eal_common_log.o
  CC eal_common_launch.o
  CC eal_common_mcfg.o
  CC eal_common_memalloc.o
  CC eal_common_memory.o
  CC eal_common_tailqs.o
  CC eal_common_errno.o
  CC eal_common_cpuflags.o
  CC eal_common_hypervisor.o
  CC eal_common_string_fns.o
  CC eal_common_hexdump.o
  CC eal_common_devargs.o
  CC eal_common_class.o
  CC eal_common_bus.o
  CC eal_common_dev.o
  CC eal_common_options.o
  CC eal_common_thread.o
  CC eal_common_proc.o
  CC eal_common_fbarray.o
  CC eal_common_uuid.o
  CC eal_common_trace.o
  CC eal_common_trace_ctf.o
  CC eal_common_trace_points.o
  CC eal_common_trace_utils.o
  CC rte_malloc.o
  CC hotplug_mp.o
  CC malloc_elem.o
  CC malloc_heap.o
  CC malloc_mp.o
  CC rte_keepalive.o
  CC rte_service.o
  CC rte_random.o
  CC rte_reciprocal.o
  CC rte_cpuflags.o
  CC rte_hypervisor.o
  CC rte_spinlock.o
  CC rte_cycles.o
  AR librte_eal.a
  INSTALL-LIB librte_eal.a
== Build lib/librte_pci
== Build lib/librte_ring
== Build lib/librte_stack
== Build lib/librte_cfgfile
== Build lib/librte_meter
== Build lib/librte_timer
== Build lib/librte_acl
== Build lib/librte_graph
== Build lib/librte_jobstats
  SYMLINK-FILE include/rte_timer.h
  SYMLINK-FILE include/rte_jobstats.h
  CC rte_timer.o
  CC rte_jobstats.o
  SYMLINK-FILE include/rte_pci.h
  SYMLINK-FILE include/rte_ring.h
  SYMLINK-FILE include/rte_ring_core.h
  SYMLINK-FILE include/rte_ring_elem.h
  SYMLINK-FILE include/rte_acl_osdep.h
  SYMLINK-FILE include/rte_ring_generic.h
  SYMLINK-FILE include/rte_cfgfile.h
  CC rte_pci.o
  SYMLINK-FILE include/rte_acl.h
  SYMLINK-FILE include/rte_stack.h
  SYMLINK-FILE include/rte_meter.h
  SYMLINK-FILE include/rte_graph.h
  CC rte_meter.o
  SYMLINK-FILE include/rte_stack_std.h
  SYMLINK-FILE include/rte_graph_worker.h
  SYMLINK-FILE include/rte_stack_lf.h
  CC rte_cfgfile.o
  CC tb_mem.o
  SYMLINK-FILE include/rte_ring_c11_mem.h
  SYMLINK-FILE include/rte_stack_lf_generic.h
  SYMLINK-FILE include/rte_stack_lf_c11.h
  SYMLINK-FILE include/rte_ring_hts.h
  SYMLINK-FILE include/rte_stack_lf_stubs.h
  CC node.o
  SYMLINK-FILE include/rte_ring_hts_c11_mem.h
  CC graph.o
  SYMLINK-FILE include/rte_ring_peek.h
  CC graph_ops.o
  CC rte_acl.o
  CC graph_debug.o
  CC rte_stack.o
  SYMLINK-FILE include/rte_ring_peek_c11_mem.h
  CC graph_stats.o
  SYMLINK-FILE include/rte_ring_rts.h
  SYMLINK-FILE include/rte_ring_rts_c11_mem.h
  CC rte_ring.o
  AR librte_pci.a
  INSTALL-LIB librte_pci.a
  CC graph_populate.o
  CC rte_stack_std.o
  AR librte_meter.a
  INSTALL-LIB librte_meter.a
  CC rte_stack_lf.o
  CC acl_bld.o
  AR librte_ring.a
  INSTALL-LIB librte_ring.a
  AR librte_cfgfile.a
  CC acl_gen.o
  INSTALL-LIB librte_cfgfile.a
  CC acl_run_scalar.o
  AR librte_stack.a
  INSTALL-LIB librte_stack.a
  CC acl_run_sse.o
  AR librte_jobstats.a
  INSTALL-LIB librte_jobstats.a
  CC acl_run_avx2.o
== Build lib/librte_mempool
== Build lib/librte_hash
== Build lib/librte_rcu
  AR librte_timer.a
  INSTALL-LIB librte_timer.a
== Build lib/librte_power
  SYMLINK-FILE include/rte_mempool.h
  SYMLINK-FILE include/rte_mempool_trace.h
  SYMLINK-FILE include/rte_mempool_trace_fp.h
  CC rte_mempool.o
  CC rte_mempool_ops.o
  CC rte_mempool_ops_default.o
  CC mempool_trace_points.o
  SYMLINK-FILE include/rte_hash.h
  SYMLINK-FILE include/rte_hash_crc.h
  SYMLINK-FILE include/rte_jhash.h
  SYMLINK-FILE include/rte_thash.h
  SYMLINK-FILE include/rte_fbk_hash.h
  CC rte_cuckoo_hash.o
  AR librte_graph.a
  INSTALL-LIB librte_graph.a
  CC rte_fbk_hash.o
  SYMLINK-FILE include/rte_rcu_qsbr.h
  CC rte_rcu_qsbr.o
  SYMLINK-FILE include/rte_power.h
  SYMLINK-FILE include/rte_power_empty_poll.h
  CC rte_power.o
  CC power_acpi_cpufreq.o
  CC power_kvm_vm.o
  CC guest_channel.o
  CC rte_power_empty_poll.o
  CC power_pstate_cpufreq.o
  AR librte_rcu.a
  INSTALL-LIB librte_rcu.a
  AR librte_mempool.a
  INSTALL-LIB librte_mempool.a
== Build lib/librte_mbuf
== Build lib/librte_rib
  AR librte_power.a
  INSTALL-LIB librte_power.a
  SYMLINK-FILE include/rte_mbuf.h
  SYMLINK-FILE include/rte_mbuf_core.h
  SYMLINK-FILE include/rte_mbuf_ptype.h
  SYMLINK-FILE include/rte_mbuf_pool_ops.h
  SYMLINK-FILE include/rte_mbuf_dyn.h
  SYMLINK-FILE include/rte_rib.h
  SYMLINK-FILE include/rte_rib6.h
  CC rte_mbuf.o
  CC rte_rib.o
  CC rte_rib6.o
  CC rte_mbuf_ptype.o
  CC rte_mbuf_pool_ops.o
  CC rte_mbuf_dyn.o
  AR librte_acl.a
  INSTALL-LIB librte_acl.a
  AR librte_rib.a
  INSTALL-LIB librte_rib.a
== Build lib/librte_fib
  AR librte_hash.a
  INSTALL-LIB librte_hash.a
  AR librte_mbuf.a
  INSTALL-LIB librte_mbuf.a
== Build lib/librte_efd
== Build lib/librte_member
== Build lib/librte_lpm
== Build lib/librte_bbdev
== Build lib/librte_net
== Build lib/librte_cryptodev
== Build lib/librte_compressdev
== Build lib/librte_reorder
  SYMLINK-FILE include/rte_fib.h
  SYMLINK-FILE include/rte_fib6.h
  CC rte_fib.o
  CC rte_fib6.o
  CC dir24_8.o
  CC trie.o
  SYMLINK-FILE include/rte_lpm.h
  SYMLINK-FILE include/rte_lpm6.h
  SYMLINK-FILE include/rte_lpm_sse.h
  SYMLINK-FILE include/rte_member.h
  CC rte_member.o
  CC rte_member_ht.o
  CC rte_lpm.o
  SYMLINK-FILE include/rte_ip.h
  SYMLINK-FILE include/rte_efd.h
  SYMLINK-FILE include/rte_reorder.h
  SYMLINK-FILE include/rte_comp.h
  CC rte_efd.o
  SYMLINK-FILE include/rte_tcp.h
  SYMLINK-FILE include/rte_udp.h
  SYMLINK-FILE include/rte_compressdev.h
  SYMLINK-FILE include/rte_crypto.h
  CC rte_reorder.o
  SYMLINK-FILE include/rte_bbdev_op.h
  SYMLINK-FILE include/rte_compressdev_pmd.h
  SYMLINK-FILE include/rte_compressdev_internal.h
  SYMLINK-FILE include/rte_esp.h
  SYMLINK-FILE include/rte_crypto_asym.h
  SYMLINK-FILE include/rte_bbdev.h
  SYMLINK-FILE include/rte_bbdev_pmd.h
  SYMLINK-FILE include/rte_sctp.h
  CC rte_compressdev.o
  SYMLINK-FILE include/rte_crypto_sym.h
  SYMLINK-FILE include/rte_cryptodev.h
  SYMLINK-FILE include/rte_icmp.h
  CC rte_bbdev.o
  SYMLINK-FILE include/rte_arp.h
  SYMLINK-FILE include/rte_cryptodev_pmd.h
  CC rte_lpm6.o
  SYMLINK-FILE include/rte_ether.h
  SYMLINK-FILE include/rte_cryptodev_trace.h
  SYMLINK-FILE include/rte_gre.h
  SYMLINK-FILE include/rte_cryptodev_trace_fp.h
  SYMLINK-FILE include/rte_net.h
  CC rte_cryptodev.o
  SYMLINK-FILE include/rte_net_crc.h
  SYMLINK-FILE include/rte_mpls.h
  SYMLINK-FILE include/rte_higig.h
  SYMLINK-FILE include/rte_gtp.h
  SYMLINK-FILE include/rte_vxlan.h
  CC rte_net.o
  CC rte_net_crc.o
  CC rte_ether.o
  CC rte_arp.o
  CC rte_member_vbf.o
  AR librte_reorder.a
  INSTALL-LIB librte_reorder.a
  CC rte_compressdev_pmd.o
  CC rte_comp.o
  CC rte_cryptodev_pmd.o
  CC cryptodev_trace_points.o
  AR librte_lpm.a
  INSTALL-LIB librte_lpm.a
  AR librte_fib.a
  INSTALL-LIB librte_fib.a
  AR librte_bbdev.a
  INSTALL-LIB librte_bbdev.a
  AR librte_net.a
  INSTALL-LIB librte_net.a
== Build lib/librte_cmdline
== Build lib/librte_sched
== Build lib/librte_ethdev
  AR librte_member.a
  INSTALL-LIB librte_member.a
  SYMLINK-FILE include/rte_sched.h
  SYMLINK-FILE include/rte_sched_common.h
  SYMLINK-FILE include/rte_red.h
  SYMLINK-FILE include/rte_approx.h
  CC rte_sched.o
  CC rte_red.o
  CC rte_approx.o
  SYMLINK-FILE include/rte_ethdev_driver.h
  SYMLINK-FILE include/rte_ethdev.h
  SYMLINK-FILE include/rte_ethdev_core.h
  SYMLINK-FILE include/rte_ethdev_pci.h
  SYMLINK-FILE include/rte_ethdev_trace.h
  SYMLINK-FILE include/rte_ethdev_trace_fp.h
  SYMLINK-FILE include/rte_ethdev_vdev.h
  SYMLINK-FILE include/rte_eth_ctrl.h
  SYMLINK-FILE include/rte_dev_info.h
  SYMLINK-FILE include/rte_flow.h
  SYMLINK-FILE include/rte_flow_driver.h
  SYMLINK-FILE include/rte_tm.h
  SYMLINK-FILE include/rte_tm_driver.h
  SYMLINK-FILE include/rte_mtr.h
  SYMLINK-FILE include/rte_mtr_driver.h
  SYMLINK-FILE include/cmdline.h
  CC ethdev_private.o
  CC rte_ethdev.o
  CC rte_class_eth.o
  CC rte_flow.o
  SYMLINK-FILE include/cmdline_parse.h
  CC rte_tm.o
  SYMLINK-FILE include/cmdline_parse_num.h
  CC rte_mtr.o
  CC ethdev_profile.o
  SYMLINK-FILE include/cmdline_parse_ipaddr.h
  SYMLINK-FILE include/cmdline_parse_etheraddr.h
  SYMLINK-FILE include/cmdline_parse_string.h
  AR librte_efd.a
  SYMLINK-FILE include/cmdline_rdline.h
  INSTALL-LIB librte_efd.a
  SYMLINK-FILE include/cmdline_vt100.h
  CC ethdev_trace_points.o
  SYMLINK-FILE include/cmdline_socket.h
  AR librte_compressdev.a
  INSTALL-LIB librte_compressdev.a
  SYMLINK-FILE include/cmdline_cirbuf.h
  SYMLINK-FILE include/cmdline_parse_portlist.h
  CC cmdline.o
  CC cmdline_cirbuf.o
  CC cmdline_parse.o
  CC cmdline_parse_etheraddr.o
  CC cmdline_parse_ipaddr.o
  CC cmdline_parse_num.o
  AR librte_cryptodev.a
  INSTALL-LIB librte_cryptodev.a
  CC cmdline_parse_string.o
  CC cmdline_rdline.o
  CC cmdline_vt100.o
  CC cmdline_socket.o
  CC cmdline_parse_portlist.o
  AR librte_cmdline.a
  INSTALL-LIB librte_cmdline.a
  AR librte_sched.a
  INSTALL-LIB librte_sched.a
  AR librte_ethdev.a
  INSTALL-LIB librte_ethdev.a
== Build lib/librte_security
== Build lib/librte_eventdev
== Build lib/librte_rawdev
== Build lib/librte_vhost
== Build lib/librte_gro
== Build lib/librte_metrics
== Build lib/librte_ip_frag
== Build lib/librte_pdump
== Build lib/librte_kni
== Build lib/librte_distributor
== Build lib/librte_bpf
== Build lib/librte_gso
== Build lib/librte_node
  SYMLINK-FILE include/rte_rawdev.h
  SYMLINK-FILE include/rte_metrics.h
  SYMLINK-FILE include/rte_gro.h
  SYMLINK-FILE include/rte_rawdev_pmd.h
  SYMLINK-FILE include/rte_eventdev.h
  SYMLINK-FILE include/rte_ip_frag.h
  SYMLINK-FILE include/rte_distributor.h
  SYMLINK-FILE include/rte_gso.h
  SYMLINK-FILE include/rte_kni.h
  SYMLINK-FILE include/rte_pdump.h
  SYMLINK-FILE include/rte_security.h
  CC rte_metrics.o
  CC rte_kni.o
  SYMLINK-FILE include/bpf_def.h
  CC rte_ipv4_fragmentation.o
  CC rte_rawdev.o
  CC rte_ipv6_fragmentation.o
  SYMLINK-FILE include/rte_eventdev_pmd.h
  CC rte_distributor_single.o
  CC rte_gso.o
  CC rte_gro.o
  SYMLINK-FILE include/rte_security_driver.h
  CC rte_pdump.o
  SYMLINK-FILE include/rte_node_ip4_api.h
  SYMLINK-FILE include/rte_bpf.h
  SYMLINK-FILE include/rte_eventdev_pmd_pci.h
  CC rte_security.o
  SYMLINK-FILE include/rte_vhost.h
  SYMLINK-FILE include/rte_bpf_ethdev.h
  SYMLINK-FILE include/rte_node_eth_api.h
  SYMLINK-FILE include/rte_eventdev_pmd_vdev.h
  SYMLINK-FILE include/rte_vdpa.h
  CC null.o
  SYMLINK-FILE include/rte_vhost_crypto.h
  SYMLINK-FILE include/rte_eventdev_trace.h
  CC bpf.o
  SYMLINK-FILE include/rte_eventdev_trace_fp.h
  CC fd_man.o
  SYMLINK-FILE include/rte_event_ring.h
  SYMLINK-FILE include/rte_event_eth_rx_adapter.h
  SYMLINK-FILE include/rte_event_timer_adapter.h
  SYMLINK-FILE include/rte_event_timer_adapter_pmd.h
  SYMLINK-FILE include/rte_event_crypto_adapter.h
  SYMLINK-FILE include/rte_event_eth_tx_adapter.h
  CC rte_eventdev.o
  CC log.o
  AR librte_metrics.a
  INSTALL-LIB librte_metrics.a
  CC rte_event_ring.o
  CC iotlb.o
== Build lib/librte_bitratestats
  CC gso_common.o
  CC ethdev_rx.o
  CC bpf_exec.o
  AR librte_security.a
  INSTALL-LIB librte_security.a
  CC rte_distributor.o
  CC rte_distributor_match_sse.o
  CC gro_tcp4.o
  SYMLINK-FILE include/rte_bitrate.h
  CC rte_bitrate.o
== Build lib/librte_latencystats
  CC rte_ipv4_reassembly.o
  AR librte_rawdev.a
  INSTALL-LIB librte_rawdev.a
  CC rte_ipv6_reassembly.o
  AR librte_kni.a
  INSTALL-LIB librte_kni.a
  CC gro_vxlan_tcp4.o
  SYMLINK-FILE include/rte_latencystats.h
  CC rte_latencystats.o
  AR librte_pdump.a
  INSTALL-LIB librte_pdump.a
  CC rte_ip_frag_common.o
  CC ethdev_tx.o
  CC ip_frag_internal.o
  CC socket.o
  CC eventdev_trace_points.o
  AR librte_bitratestats.a
  INSTALL-LIB librte_bitratestats.a
  CC vhost.o
  CC vhost_user.o
  CC gso_tcp4.o
  CC gso_tunnel_tcp4.o
  CC bpf_load.o
  CC gso_udp4.o
  CC rte_event_eth_rx_adapter.o
  CC ethdev_ctrl.o
  AR librte_distributor.a
  INSTALL-LIB librte_distributor.a
  CC ip4_lookup.o
  AR librte_latencystats.a
  INSTALL-LIB librte_latencystats.a
  CC bpf_pkt.o
  AR librte_gro.a
  INSTALL-LIB librte_gro.a
  CC ip4_rewrite.o
  CC pkt_drop.o
  AR librte_ip_frag.a
  INSTALL-LIB librte_ip_frag.a
  CC bpf_validate.o
  CC bpf_jit_x86.o
== Build lib/librte_ipsec
  CC rte_event_timer_adapter.o
  AR librte_gso.a
  INSTALL-LIB librte_gso.a
  CC rte_event_crypto_adapter.o
  CC rte_event_eth_tx_adapter.o
  SYMLINK-FILE include/rte_ipsec.h
  SYMLINK-FILE include/rte_ipsec_group.h
  SYMLINK-FILE include/rte_ipsec_sa.h
  SYMLINK-FILE include/rte_ipsec_sad.h
  CC esp_inb.o
  CC esp_outb.o
  CC virtio_net.o
  CC vdpa.o
  CC vhost_crypto.o
  CC sa.o
  CC ses.o
  AR librte_node.a
  INSTALL-LIB librte_node.a
  CC ipsec_sad.o
  AR librte_bpf.a
  INSTALL-LIB librte_bpf.a
  AR librte_ipsec.a
  AR librte_eventdev.a
  INSTALL-LIB librte_ipsec.a
  INSTALL-LIB librte_eventdev.a
== Build lib/librte_port
  SYMLINK-FILE include/rte_port.h
  SYMLINK-FILE include/rte_port_ethdev.h
  SYMLINK-FILE include/rte_port_ring.h
  SYMLINK-FILE include/rte_port_frag.h
  SYMLINK-FILE include/rte_port_ras.h
  SYMLINK-FILE include/rte_port_fd.h
  SYMLINK-FILE include/rte_port_sched.h
  SYMLINK-FILE include/rte_port_kni.h
  SYMLINK-FILE include/rte_port_sym_crypto.h
  SYMLINK-FILE include/rte_port_source_sink.h
  SYMLINK-FILE include/rte_port_eventdev.h
  CC rte_port_ethdev.o
  CC rte_port_ring.o
  CC rte_port_frag.o
  CC rte_port_ras.o
  CC rte_port_sched.o
  CC rte_port_fd.o
  CC rte_port_kni.o
  CC rte_port_source_sink.o
  CC rte_port_sym_crypto.o
  CC rte_port_eventdev.o
  AR librte_port.a
  INSTALL-LIB librte_port.a
== Build lib/librte_table
  SYMLINK-FILE include/rte_table.h
  SYMLINK-FILE include/rte_table_lpm.h
  SYMLINK-FILE include/rte_table_lpm_ipv6.h
  SYMLINK-FILE include/rte_table_acl.h
  SYMLINK-FILE include/rte_table_hash.h
  SYMLINK-FILE include/rte_table_hash_cuckoo.h
  SYMLINK-FILE include/rte_table_hash_func.h
  SYMLINK-FILE include/rte_table_hash_func_arm64.h
  SYMLINK-FILE include/rte_lru.h
  SYMLINK-FILE include/rte_lru_x86.h
  SYMLINK-FILE include/rte_table_array.h
  SYMLINK-FILE include/rte_table_stub.h
  CC rte_table_lpm.o
  CC rte_table_lpm_ipv6.o
  CC rte_table_acl.o
  CC rte_table_hash_cuckoo.o
  CC rte_table_hash_key8.o
  CC rte_table_hash_key16.o
  CC rte_table_hash_key32.o
  CC rte_table_hash_ext.o
  CC rte_table_hash_lru.o
  CC rte_table_array.o
  CC rte_table_stub.o
  AR librte_vhost.a
  INSTALL-LIB librte_vhost.a
  AR librte_table.a
  INSTALL-LIB librte_table.a
== Build lib/librte_flow_classify
== Build lib/librte_pipeline
  SYMLINK-FILE include/rte_pipeline.h
  SYMLINK-FILE include/rte_port_in_action.h
  SYMLINK-FILE include/rte_table_action.h
  CC rte_pipeline.o
  CC rte_port_in_action.o
  CC rte_table_action.o
  SYMLINK-FILE include/rte_flow_classify.h
  CC rte_flow_classify.o
  CC rte_flow_classify_parse.o
  AR librte_flow_classify.a
  INSTALL-LIB librte_flow_classify.a
  AR librte_pipeline.a
  INSTALL-LIB librte_pipeline.a
== Build buildtools
== Build kernel
== Build buildtools/pmdinfogen
== Build kernel/linux
  HOSTCC pmdinfogen.o
== Build kernel/linux/igb_uio
  HOSTLD dpdk-pmdinfogen
  INSTALL-HOSTAPP dpdk-pmdinfogen
== Build drivers
== Build drivers/common
== Build drivers/common/cpt
== Build drivers/common/octeontx2
== Build drivers/common/octeontx
== Build drivers/common/iavf
== Build drivers/common/dpaax
  CC otx2_dev.o
  CC otx2_irq.o
  CC otx2_common.o
  CC otx2_mbox.o
  CC otx2_sec_idev.o
  CC octeontx_mbox.o
  CC cpt_fpm_tables.o
  CC cpt_pmd_ops_helper.o
  CC dpaax_iova_table.o
  CC dpaa_of.o
  CC iavf_adminq.o
  CC iavf_common.o
  CC iavf_impl.o
  AR librte_common_octeontx.a
  INSTALL-LIB librte_common_octeontx.a
  AR librte_common_dpaax.a
  INSTALL-LIB librte_common_dpaax.a
  AR librte_common_cpt.a
  INSTALL-LIB librte_common_cpt.a
  AR librte_common_octeontx2.a
  INSTALL-LIB librte_common_octeontx2.a
  AR librte_common_iavf.a
  INSTALL-LIB librte_common_iavf.a
== Build drivers/bus
  AR      /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/built-in.a
  CC [M]  /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/igb_uio.o
== Build drivers/bus/ifpga
== Build drivers/bus/fslmc
== Build drivers/bus/vmbus
== Build drivers/bus/dpaa
== Build drivers/bus/pci
== Build drivers/bus/vdev
  SYMLINK-FILE include/rte_bus_ifpga.h
  SYMLINK-FILE include/rte_bus_pci.h
  CC ifpga_bus.o
  CC ifpga_common.o
  CC linux/pci_uio.o
  SYMLINK-FILE include/rte_bus_vdev.h
  CC linux/pci.o
  CC qbman/qbman_portal.o
  CC qbman/qbman_debug.o
  CC mc/dpmng.o
  CC dpaa_bus.o
  CC mc/dpbp.o
  SYMLINK-FILE include/rte_bus_vmbus.h
  CC base/fman/fman.o
  CC base/fman/fman_hw.o
  CC vdev.o
  SYMLINK-FILE include/rte_vmbus_reg.h
  CC linux/vmbus_bus.o
  CC linux/vmbus_uio.o
  CC vmbus_common.o
  CC vmbus_channel.o
  Building modules, stage 2.
  CC vmbus_bufring.o
  MODPOST 1 modules
  CC mc/dpio.o
  CC mc/mc_sys.o
  AR librte_bus_ifpga.a
  INSTALL-LIB librte_bus_ifpga.a
  CC vdev_params.o
  CC linux/pci_vfio.o
  CC pci_params.o
  CC pci_common.o
  CC [M]  /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/igb_uio.mod.o
  AR librte_bus_vdev.a
  INSTALL-LIB librte_bus_vdev.a
  CC mc/dpcon.o
  CC pci_common_uio.o
  CC base/fman/netcfg_layer.o
  CC vmbus_common_uio.o
  CC base/qbman/process.o
  CC base/qbman/bman.o
  CC base/qbman/bman_driver.o
  AR librte_bus_vmbus.a
  CC base/qbman/qman.o
  INSTALL-LIB librte_bus_vmbus.a
  CC base/qbman/qman_driver.o
  CC base/qbman/dpaa_alloc.o
  CC mc/dpci.o
  LD [M]  /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/igb_uio.ko
  CC mc/dpdmai.o
INSTALL-MODULE igb_uio.ko
  CC portal/dpaa2_hw_dpio.o
  CC portal/dpaa2_hw_dpbp.o
  CC portal/dpaa2_hw_dpci.o
  CC fslmc_vfio.o
  AR librte_bus_pci.a
  INSTALL-LIB librte_bus_pci.a
  CC fslmc_bus.o
  CC base/qbman/dpaa_sys.o
  PMDINFO portal/dpaa2_hw_dpbp.o.pmd.c
  CC portal/dpaa2_hw_dpbp.o.pmd.o
  PMDINFO portal/dpaa2_hw_dpci.o.pmd.c
  CC portal/dpaa2_hw_dpci.o.pmd.o
  PMDINFO portal/dpaa2_hw_dpio.o.pmd.c
  CC portal/dpaa2_hw_dpio.o.pmd.o
  LD portal/dpaa2_hw_dpbp.o
  LD portal/dpaa2_hw_dpci.o
  LD portal/dpaa2_hw_dpio.o
  AR librte_bus_fslmc.a
  INSTALL-LIB librte_bus_fslmc.a
  AR librte_bus_dpaa.a
  INSTALL-LIB librte_bus_dpaa.a
== Build drivers/mempool
== Build drivers/mempool/stack
== Build drivers/mempool/bucket
== Build drivers/mempool/dpaa
== Build drivers/mempool/dpaa2
== Build drivers/mempool/ring
== Build drivers/mempool/octeontx2
== Build drivers/mempool/octeontx
  CC rte_mempool_ring.o
  SYMLINK-FILE include/rte_dpaa2_mempool.h
  CC dpaa2_hw_mempool.o
  CC rte_mempool_stack.o
  CC dpaa_mempool.o
  CC otx2_mempool_ops.o
  CC otx2_mempool.o
  CC otx2_mempool_irq.o
  CC otx2_mempool_debug.o
  CC rte_mempool_bucket.o
  CC octeontx_fpavf.o
  CC rte_mempool_octeontx.o
  PMDINFO otx2_mempool.o.pmd.c
  CC otx2_mempool.o.pmd.o
  LD otx2_mempool.o
  AR librte_mempool_dpaa.a
  AR librte_mempool_dpaa2.a
  INSTALL-LIB librte_mempool_dpaa.a
  INSTALL-LIB librte_mempool_dpaa2.a
  AR librte_mempool_ring.a
  PMDINFO octeontx_fpavf.o.pmd.c
  CC octeontx_fpavf.o.pmd.o
  INSTALL-LIB librte_mempool_ring.a
  LD octeontx_fpavf.o
  AR librte_mempool_octeontx.a
  INSTALL-LIB librte_mempool_octeontx.a
  AR librte_mempool_stack.a
  INSTALL-LIB librte_mempool_stack.a
  AR librte_mempool_octeontx2.a
  INSTALL-LIB librte_mempool_octeontx2.a
  AR librte_mempool_bucket.a
  INSTALL-LIB librte_mempool_bucket.a
== Build drivers/net
== Build drivers/crypto
== Build drivers/baseband
== Build drivers/common/qat
== Build drivers/compress
== Build drivers/vdpa
== Build drivers/compress/octeontx
== Build drivers/crypto/octeontx
== Build drivers/crypto/scheduler
== Build drivers/crypto/octeontx2
== Build drivers/vdpa/ifc
== Build drivers/crypto/null
== Build drivers/crypto/dpaa2_sec
== Build drivers/crypto/caam_jr
== Build drivers/crypto/dpaa_sec
== Build drivers/crypto/virtio
== Build drivers/crypto/nitrox
  CC qat_comp.o
== Build drivers/baseband/null
== Build drivers/net/af_packet
  CC nitrox_device.o
  CC ifcvf_vdpa.o
  SYMLINK-FILE include/rte_cryptodev_scheduler_operations.h
  CC otx_zip_pmd.o
  CC bbdev_null.o
  CC virtqueue.o
  CC null_crypto_pmd.o
  CC rte_eth_af_packet.o
  CC otx2_cryptodev.o
  CC otx_cryptodev.o
  SYMLINK-FILE include/rte_cryptodev_scheduler.h
  CC dpaa_sec.o
  CC dpaa2_sec_dpseci.o
  CC scheduler_pmd.o
  CC caam_jr.o
  PMDINFO otx_cryptodev.o.pmd.c
  CC otx_cryptodev.o.pmd.o
  LD otx_cryptodev.o
  CC otx_cryptodev_capabilities.o
  PMDINFO nitrox_device.o.pmd.c
  CC nitrox_device.o.pmd.o
  LD nitrox_device.o
  CC nitrox_hal.o
  PMDINFO otx2_cryptodev.o.pmd.c
  CC otx2_cryptodev.o.pmd.o
  CC scheduler_pmd_ops.o
  LD otx2_cryptodev.o
  CC otx2_cryptodev_capabilities.o
  CC virtio_pci.o
  CC nitrox_logs.o
  CC nitrox_sym.o
  CC qat_comp_pmd.o
  CC otx_cryptodev_hw_access.o
  PMDINFO ifcvf_vdpa.o.pmd.c
  CC ifcvf_vdpa.o.pmd.o
  LD ifcvf_vdpa.o
  CC ifcvf.o
  PMDINFO rte_eth_af_packet.o.pmd.c
  CC rte_eth_af_packet.o.pmd.o
  LD rte_eth_af_packet.o
  AR librte_pmd_af_packet.a
  INSTALL-LIB librte_pmd_af_packet.a
== Build drivers/net/ark
  CC otx2_cryptodev_hw_access.o
  PMDINFO null_crypto_pmd.o.pmd.c
  CC null_crypto_pmd.o.pmd.o
  PMDINFO otx_zip_pmd.o.pmd.c
  CC otx_zip_pmd.o.pmd.o
  LD null_crypto_pmd.o
  LD otx_zip_pmd.o
  CC null_crypto_pmd_ops.o
  CC otx_zip.o
  AR librte_pmd_ifc.a
  INSTALL-LIB librte_pmd_ifc.a
  CC otx2_cryptodev_mbox.o
  CC rte_cryptodev_scheduler.o
  CC virtio_rxtx.o
  CC ark_ddm.o
  CC otx_cryptodev_mbox.o
  CC ark_ethdev.o
  CC qat_device.o
  PMDINFO bbdev_null.o.pmd.c
  CC bbdev_null.o.pmd.o
  LD bbdev_null.o
  AR librte_pmd_bbdev_null.a
  INSTALL-LIB librte_pmd_bbdev_null.a
== Build drivers/baseband/turbo_sw
  CC nitrox_sym_capabilities.o
  CC ark_ethdev_rx.o
  AR librte_pmd_octeontx_zip.a
  INSTALL-LIB librte_pmd_octeontx_zip.a
  CC ark_ethdev_tx.o
  AR librte_pmd_null_crypto.a
  INSTALL-LIB librte_pmd_null_crypto.a
  CC ark_mpu.o
  CC otx2_cryptodev_ops.o
  CC bbdev_turbo_software.o
  CC nitrox_sym_reqmgr.o
  CC otx_cryptodev_ops.o
  PMDINFO qat_device.o.pmd.c
  CC qat_device.o.pmd.o
  LD qat_device.o
  CC scheduler_roundrobin.o
  CC virtio_cryptodev.o
  CC qat_common.o
  CC scheduler_pkt_size_distr.o
  PMDINFO ark_ethdev.o.pmd.c
  CC ark_ethdev.o.pmd.o
  LD ark_ethdev.o
  CC scheduler_failover.o
  CC nitrox_qp.o
  CC ark_pktchkr.o
  CC scheduler_multicore.o
  CC qat_logs.o
  CC qat_qp.o
  CC ark_pktdir.o
  AR librte_pmd_nitrox.a
  INSTALL-LIB librte_pmd_nitrox.a
  CC ark_pktgen.o
  PMDINFO virtio_cryptodev.o.pmd.c
  CC virtio_cryptodev.o.pmd.o
== Build drivers/baseband/fpga_lte_fec
  LD virtio_cryptodev.o
  AR librte_pmd_virtio_crypto.a
  INSTALL-LIB librte_pmd_virtio_crypto.a
== Build drivers/net/atlantic
== Build drivers/net/avp
  PMDINFO caam_jr.o.pmd.c
  CC caam_jr.o.pmd.o
  LD caam_jr.o
  CC caam_jr_capabilities.o
== Build drivers/net/axgbe
  SYMLINK-FILE include/fpga_lte_fec.h
  CC fpga_lte_fec.o
  CC atl_rxtx.o
  SYMLINK-FILE include/rte_avp_common.h
  SYMLINK-FILE include/rte_avp_fifo.h
  CC ark_rqp.o
  CC avp_ethdev.o
  AR librte_pmd_qat.a
  INSTALL-LIB librte_pmd_qat.a
== Build drivers/baseband/fpga_5gnr_fec
  CC axgbe_ethdev.o
  CC atl_ethdev.o
  CC caam_jr_hw.o
  CC ark_udm.o
  SYMLINK-FILE include/rte_pmd_fpga_5gnr_fec.h
  CC rte_fpga_5gnr_fec.o
  AR librte_pmd_ark.a
  INSTALL-LIB librte_pmd_ark.a
  CC caam_jr_uio.o
  PMDINFO bbdev_turbo_software.o.pmd.c
  CC bbdev_turbo_software.o.pmd.o
  LD bbdev_turbo_software.o
  AR librte_pmd_bbdev_turbo_sw.a
  INSTALL-LIB librte_pmd_bbdev_turbo_sw.a
== Build drivers/net/bonding
  CC atl_hw_regs.o
  CC axgbe_dev.o
  SYMLINK-FILE include/rte_eth_bond.h
  SYMLINK-FILE include/rte_eth_bond_8023ad.h
  CC rte_eth_bond_api.o
  PMDINFO fpga_lte_fec.o.pmd.c
  CC fpga_lte_fec.o.pmd.o
  LD fpga_lte_fec.o
  PMDINFO axgbe_ethdev.o.pmd.c
  CC axgbe_ethdev.o.pmd.o
  AR librte_pmd_bbdev_fpga_lte_fec.a
  INSTALL-LIB librte_pmd_bbdev_fpga_lte_fec.a
  LD axgbe_ethdev.o
  CC axgbe_mdio.o
  CC rte_eth_bond_pmd.o
  AR librte_pmd_caam_jr.a
  INSTALL-LIB librte_pmd_caam_jr.a
  CC axgbe_phy_impl.o
  PMDINFO atl_ethdev.o.pmd.c
  CC atl_ethdev.o.pmd.o
  LD atl_ethdev.o
  CC rte_eth_bond_args.o
  CC hw_atl_utils.o
  PMDINFO rte_fpga_5gnr_fec.o.pmd.c
  CC rte_fpga_5gnr_fec.o.pmd.o
  LD rte_fpga_5gnr_fec.o
  AR librte_pmd_bbdev_fpga_5gnr_fec.a
  INSTALL-LIB librte_pmd_bbdev_fpga_5gnr_fec.a
  CC rte_eth_bond_8023ad.o
  AR librte_pmd_crypto_scheduler.a
  INSTALL-LIB librte_pmd_crypto_scheduler.a
  CC hw_atl_llh.o
  PMDINFO dpaa_sec.o.pmd.c
  CC dpaa_sec.o.pmd.o
  LD dpaa_sec.o
  AR librte_pmd_dpaa_sec.a
  INSTALL-LIB librte_pmd_dpaa_sec.a
  CC hw_atl_utils_fw2x.o
  CC rte_eth_bond_alb.o
  PMDINFO avp_ethdev.o.pmd.c
  CC avp_ethdev.o.pmd.o
  LD avp_ethdev.o
  AR librte_pmd_avp.a
  INSTALL-LIB librte_pmd_avp.a
  CC rte_eth_bond_flow.o
  PMDINFO dpaa2_sec_dpseci.o.pmd.c
  CC dpaa2_sec_dpseci.o.pmd.o
  LD dpaa2_sec_dpseci.o
== Build drivers/net/cxgbe
  CC mc/dpseci.o
== Build drivers/net/dpaa
== Build drivers/net/dpaa2
  CC axgbe_i2c.o
  CC axgbe_rxtx.o
  AR librte_pmd_dpaa2_sec.a
  INSTALL-LIB librte_pmd_dpaa2_sec.a
  SYMLINK-FILE include/rte_pmd_dpaa.h
  CC cxgbe_ethdev.o
  CC axgbe_rxtx_vec_sse.o
  SYMLINK-FILE include/rte_pmd_dpaa2.h
  CC cxgbevf_ethdev.o
  CC dpaa_ethdev.o
  CC base/dpaa2_hw_dpni.o
  CC dpaa2_rxtx.o
  CC dpaa_rxtx.o
  CC hw_atl_b0.o
  CC rte_pmd_atlantic.o
  CC dpaa2_ethdev.o
  CC dpaa2_flow.o
  PMDINFO cxgbevf_ethdev.o.pmd.c
  CC cxgbevf_ethdev.o.pmd.o
  CC cxgbe_main.o
  LD cxgbevf_ethdev.o
  CC dpaa2_mux.o
  PMDINFO dpaa_ethdev.o.pmd.c
  CC dpaa_ethdev.o.pmd.o
  AR librte_pmd_atlantic.a
  INSTALL-LIB librte_pmd_atlantic.a
  CC dpaa2_sparser.o
  LD dpaa_ethdev.o
  CC cxgbevf_main.o
  PMDINFO cxgbe_ethdev.o.pmd.c
  CC cxgbe_ethdev.o.pmd.o
  LD cxgbe_ethdev.o
  CC sge.o
  AR librte_pmd_axgbe.a
  INSTALL-LIB librte_pmd_axgbe.a
  CC cxgbe_filter.o
  PMDINFO dpaa2_mux.o.pmd.c
  CC dpaa2_mux.o.pmd.o
  LD dpaa2_mux.o
== Build drivers/net/e1000
== Build drivers/net/ena
  PMDINFO rte_eth_bond_pmd.o.pmd.c
  CC rte_eth_bond_pmd.o.pmd.o
  LD rte_eth_bond_pmd.o
  AR librte_pmd_bond.a
  INSTALL-LIB librte_pmd_bond.a
  CC cxgbe_flow.o
  CC t4_hw.o
  CC e1000_80003es2lan.o
  CC mc/dpni.o
  CC ena_ethdev.o
  PMDINFO dpaa2_ethdev.o.pmd.c
  CC dpaa2_ethdev.o.pmd.o
  LD dpaa2_ethdev.o
  CC ena_com.o
  CC e1000_82540.o
  CC e1000_82541.o
  CC e1000_82542.o
  CC e1000_82543.o
  CC mc/dpkg.o
  CC mc/dpdmux.o
  CC ena_eth_com.o
  CC e1000_82571.o
== Build drivers/net/enetc
== Build drivers/net/enic
== Build drivers/net/failsafe
  CC clip_tbl.o
== Build drivers/net/fm10k
  AR librte_pmd_dpaa2.a
  INSTALL-LIB librte_pmd_dpaa2.a
  CC e1000_82575.o
  CC enetc_ethdev.o
  CC enic_ethdev.o
  CC failsafe.o
  CC enic_main.o
  AR librte_pmd_dpaa.a
  INSTALL-LIB librte_pmd_dpaa.a
  CC enic_rxtx.o
== Build drivers/net/hinic
  CC fm10k_ethdev.o
  AR librte_pmd_octeontx2_crypto.a
  INSTALL-LIB librte_pmd_octeontx2_crypto.a
  CC fm10k_rxtx.o
== Build drivers/net/hns3
  CC hinic_pmd_api_cmd.o
  CC hinic_pmd_cfg.o
  CC hns3_ethdev.o
  PMDINFO failsafe.o.pmd.c
  CC failsafe.o.pmd.o
  LD failsafe.o
  CC failsafe_args.o
  PMDINFO ena_ethdev.o.pmd.c
  CC ena_ethdev.o.pmd.o
  LD ena_ethdev.o
  CC e1000_i210.o
  PMDINFO enic_ethdev.o.pmd.c
  CC enic_ethdev.o.pmd.o
  AR librte_pmd_ena.a
  LD enic_ethdev.o
  INSTALL-LIB librte_pmd_ena.a
  CC e1000_api.o
== Build drivers/net/i40e
== Build drivers/net/iavf
  PMDINFO enetc_ethdev.o.pmd.c
  CC enetc_ethdev.o.pmd.o
  LD enetc_ethdev.o
  CC enetc_rxtx.o
  CC hinic_pmd_cmdq.o
  SYMLINK-FILE include/rte_pmd_i40e.h
  CC i40e_adminq.o
  CC enic_clsf.o
  CC e1000_ich8lan.o
  CC iavf_ethdev.o
  CC mps_tcam.o
  CC l2t.o
  CC enic_res.o
  CC failsafe_eal.o
  CC hinic_pmd_eqs.o
  PMDINFO fm10k_ethdev.o.pmd.c
  CC fm10k_ethdev.o.pmd.o
  AR librte_pmd_enetc.a
  LD fm10k_ethdev.o
  INSTALL-LIB librte_pmd_enetc.a
  CC hinic_pmd_hwdev.o
  CC fm10k_pf.o
  CC hinic_pmd_hwif.o
  CC hinic_pmd_mgmt.o
  CC i40e_common.o
  CC i40e_diag.o
  CC smt.o
  CC enic_flow.o
  CC failsafe_ops.o
  CC enic_fm_flow.o
  CC failsafe_rxtx.o
  CC failsafe_ether.o
  PMDINFO iavf_ethdev.o.pmd.c
  CC iavf_ethdev.o.pmd.o
  LD iavf_ethdev.o
  CC failsafe_flow.o
  CC iavf_vchnl.o
  CC fm10k_tlv.o
  CC e1000_logs.o
  CC t4vf_hw.o
  AR librte_pmd_octeontx_crypto.a
  INSTALL-LIB librte_pmd_octeontx_crypto.a
  CC hinic_pmd_niccfg.o
  CC e1000_mac.o
  CC e1000_manage.o
  CC fm10k_common.o
  CC fm10k_mbx.o
  CC fm10k_vf.o
  CC e1000_mbx.o
  PMDINFO hns3_ethdev.o.pmd.c
  CC hns3_ethdev.o.pmd.o
  LD hns3_ethdev.o
  CC hns3_ethdev_vf.o
  CC hns3_cmd.o
  CC hns3_mbx.o
  CC hns3_rxtx.o
  CC fm10k_api.o
  CC base/vnic_cq.o
  CC e1000_nvm.o
  CC base/vnic_wq.o
  CC base/vnic_dev.o
  CC fm10k_rxtx_vec.o
  CC iavf_rxtx.o
  CC iavf_generic_flow.o
  AR librte_pmd_cxgbe.a
  CC e1000_osdep.o
  INSTALL-LIB librte_pmd_cxgbe.a
  CC iavf_fdir.o
  CC iavf_hash.o
  CC hns3_rss.o
  CC e1000_phy.o
  CC base/vnic_intr.o
  CC hinic_pmd_nicio.o
  CC hinic_pmd_wq.o
  CC failsafe_intr.o
  CC hinic_pmd_mbox.o
  PMDINFO hns3_ethdev_vf.o.pmd.c
  CC hns3_ethdev_vf.o.pmd.o
  CC hinic_pmd_flow.o
  LD hns3_ethdev_vf.o
  CC i40e_hmc.o
  CC hinic_pmd_ethdev.o
  CC hns3_flow.o
  CC i40e_lan_hmc.o
  CC base/vnic_rq.o
  CC enic_rxtx_vec_avx2.o
  AR librte_pmd_fm10k.a
  INSTALL-LIB librte_pmd_fm10k.a
  CC iavf_rxtx_vec_sse.o
  CC e1000_vf.o
  AR librte_pmd_failsafe.a
  INSTALL-LIB librte_pmd_failsafe.a
  CC igb_ethdev.o
  CC igb_rxtx.o
  CC iavf_rxtx_vec_avx2.o
  CC hinic_pmd_rx.o
  CC hinic_pmd_tx.o
  CC hns3_fdir.o
  CC igb_pf.o
  CC i40e_nvm.o
  AR librte_pmd_enic.a
  INSTALL-LIB librte_pmd_enic.a
  CC i40e_dcb.o
== Build drivers/net/ice
== Build drivers/net/igc
  PMDINFO hinic_pmd_ethdev.o.pmd.c
  CC hinic_pmd_ethdev.o.pmd.o
  LD hinic_pmd_ethdev.o
== Build drivers/net/ionic
  CC hns3_intr.o
  CC igc_api.o
  SYMLINK-FILE include/rte_pmd_ice.h
  CC ice_controlq.o
  CC ice_common.o
  CC igb_flow.o
  CC em_ethdev.o
  CC ionic_mac_api.o
  CC ionic_rx_filter.o
  CC em_rxtx.o
  CC igc_base.o
  CC i40e_ethdev.o
  CC igc_i225.o
  AR librte_pmd_hinic.a
  INSTALL-LIB librte_pmd_hinic.a
  CC hns3_stats.o
  CC hns3_regs.o
  CC ionic_rxtx.o
  CC ionic_dev.o
  CC ionic_ethdev.o
  CC igc_mac.o
  PMDINFO em_ethdev.o.pmd.c
  CC em_ethdev.o.pmd.o
  LD em_ethdev.o
  CC ionic_lif.o
  CC ionic_main.o
  CC ice_sched.o
  AR librte_pmd_iavf.a
  INSTALL-LIB librte_pmd_iavf.a
  CC ice_switch.o
  PMDINFO igb_ethdev.o.pmd.c
  CC igb_ethdev.o.pmd.o
  LD igb_ethdev.o
== Build drivers/net/ixgbe
== Build drivers/net/liquidio
== Build drivers/net/memif
  CC igc_manage.o
  CC hns3_dcb.o
  CC lio_ethdev.o
  SYMLINK-FILE include/rte_pmd_ixgbe.h
  CC ixgbe_common.o
  CC ixgbe_82598.o
  CC igc_nvm.o
  PMDINFO ionic_ethdev.o.pmd.c
  CC ionic_ethdev.o.pmd.o
  CC rte_eth_memif.o
  LD ionic_ethdev.o
  CC igc_osdep.o
  CC memif_socket.o
  CC ixgbe_82599.o
  CC ixgbe_x540.o
  AR librte_pmd_e1000.a
  INSTALL-LIB librte_pmd_e1000.a
  CC ice_nvm.o
== Build drivers/net/netvsc
  AR librte_pmd_ionic.a
  INSTALL-LIB librte_pmd_ionic.a
  CC igc_phy.o
  CC igc_logs.o
  CC ice_flex_pipe.o
  CC ice_flow.o
  CC hn_ethdev.o
  CC hn_rxtx.o
  PMDINFO lio_ethdev.o.pmd.c
  CC lio_ethdev.o.pmd.o
  LD lio_ethdev.o
  CC hn_rndis.o
  CC lio_rxtx.o
  CC hn_nvs.o
  CC hns3_mp.o
  CC ixgbe_x550.o
  PMDINFO hn_ethdev.o.pmd.c
  CC hn_ethdev.o.pmd.o
  LD hn_ethdev.o
  PMDINFO rte_eth_memif.o.pmd.c
  CC rte_eth_memif.o.pmd.o
  CC igc_ethdev.o
  LD rte_eth_memif.o
  CC ixgbe_phy.o
  CC ixgbe_api.o
  AR librte_pmd_memif.a
  INSTALL-LIB librte_pmd_memif.a
  CC ixgbe_vf.o
  AR librte_pmd_hns3.a
  INSTALL-LIB librte_pmd_hns3.a
  CC hn_vf.o
  CC ixgbe_hv_vf.o
== Build drivers/net/nfp
  CC i40e_rxtx.o
  CC i40e_rxtx_vec_sse.o
  CC nfp_cppcore.o
  CC nfp_cpp_pcie_ops.o
  CC nfp_mutex.o
  CC lio_23xx_vf.o
  CC lio_mbox.o
  AR librte_pmd_netvsc.a
  INSTALL-LIB librte_pmd_netvsc.a
  CC ice_dcb.o
  CC ixgbe_dcb.o
  CC ixgbe_dcb_82599.o
  PMDINFO igc_ethdev.o.pmd.c
  CC igc_ethdev.o.pmd.o
  LD igc_ethdev.o
  CC igc_txrx.o
  CC igc_filter.o
  CC i40e_ethdev_vf.o
  CC i40e_pf.o
  CC i40e_fdir.o
  AR librte_pmd_lio.a
  CC i40e_flow.o
  INSTALL-LIB librte_pmd_lio.a
  CC rte_pmd_i40e.o
  CC nfp_resource.o
  CC nfp_crc.o
  CC ixgbe_dcb_82598.o
  CC ixgbe_mbx.o
  CC ixgbe_rxtx.o
  CC ixgbe_ethdev.o
  CC ice_fdir.o
  CC ice_acl.o
  CC nfp_mip.o
  CC ixgbe_fdir.o
  CC ixgbe_pf.o
  PMDINFO i40e_ethdev.o.pmd.c
  CC i40e_ethdev.o.pmd.o
  LD i40e_ethdev.o
  CC nfp_nffw.o
  CC ice_acl_ctrl.o
  CC nfp_hwinfo.o
  CC i40e_tm.o
  PMDINFO i40e_ethdev_vf.o.pmd.c
  CC i40e_ethdev_vf.o.pmd.o
  LD i40e_ethdev_vf.o
  CC nfp_rtsym.o
  CC nfp_nsp.o
  CC igc_flow.o
  CC ice_ethdev.o
  CC ice_rxtx.o
  CC ice_rxtx_vec_sse.o
  CC i40e_vf_representor.o
  CC ice_switch_filter.o
  CC ice_fdir_filter.o
  CC ice_hash.o
  CC ice_rxtx_vec_avx2.o
  CC ice_generic_flow.o
  CC i40e_rxtx_vec_avx2.o
  CC nfp_nsp_cmds.o
  CC nfp_nsp_eth.o
  AR librte_pmd_igc.a
  INSTALL-LIB librte_pmd_igc.a
  CC nfp_net.o
== Build drivers/net/bnxt
== Build drivers/net/null
  SYMLINK-FILE include/rte_pmd_bnxt.h
  CC bnxt_cpr.o
== Build drivers/net/octeontx
  CC rte_eth_null.o
  CC bnxt_ethdev.o
  CC ice_dcf.o
  CC bnxt_filter.o
  CC octeontx_rxtx.o
  CC octeontx_pkovf.o
  PMDINFO ixgbe_ethdev.o.pmd.c
  CC ixgbe_ethdev.o.pmd.o
  LD ixgbe_ethdev.o
  CC bnxt_flow.o
  PMDINFO octeontx_pkovf.o.pmd.c
  CC octeontx_pkovf.o.pmd.o
  CC ixgbe_flow.o
  LD octeontx_pkovf.o
  CC bnxt_hwrm.o
  CC bnxt_ring.o
  AR librte_pmd_i40e.a
  CC octeontx_pkivf.o
  INSTALL-LIB librte_pmd_i40e.a
  CC ice_dcf_ethdev.o
  PMDINFO octeontx_pkivf.o.pmd.c
  CC octeontx_pkivf.o.pmd.o
  LD octeontx_pkivf.o
  CC ice_dcf_parent.o
  CC octeontx_bgx.o
  PMDINFO ice_ethdev.o.pmd.c
  CC ice_ethdev.o.pmd.o
  LD ice_ethdev.o
  CC bnxt_rxq.o
  CC bnxt_rxr.o
  CC bnxt_stats.o
  PMDINFO rte_eth_null.o.pmd.c
  CC rte_eth_null.o.pmd.o
  LD rte_eth_null.o
  PMDINFO nfp_net.o.pmd.c
  CC nfp_net.o.pmd.o
  AR librte_pmd_null.a
  INSTALL-LIB librte_pmd_null.a
  LD nfp_net.o
== Build drivers/net/octeontx2
  AR librte_pmd_nfp.a
  INSTALL-LIB librte_pmd_nfp.a
  CC bnxt_txq.o
  PMDINFO ice_dcf_ethdev.o.pmd.c
  CC ice_dcf_ethdev.o.pmd.o
  LD ice_dcf_ethdev.o
== Build drivers/net/qede
== Build drivers/net/ring
  CC otx2_rx.o
  CC octeontx_ethdev.o
== Build drivers/net/sfc
  AR librte_pmd_ice.a
  INSTALL-LIB librte_pmd_ice.a
  CC octeontx_ethdev_ops.o
  CC ixgbe_rxtx_vec_sse.o
  SYMLINK-FILE include/rte_eth_ring.h
  CC rte_eth_ring.o
  CC ecore_dev.o
  CC ixgbe_ipsec.o
  CC ecore_hw.o
  CC sfc_ethdev.o
  CC sfc_kvargs.o
  PMDINFO octeontx_ethdev.o.pmd.c
  CC octeontx_ethdev.o.pmd.o
  LD octeontx_ethdev.o
  CC bnxt_txr.o
  CC sfc.o
  AR librte_pmd_octeontx.a
  INSTALL-LIB librte_pmd_octeontx.a
  CC bnxt_vnic.o
== Build drivers/net/tap
  PMDINFO bnxt_ethdev.o.pmd.c
  CC bnxt_ethdev.o.pmd.o
  LD bnxt_ethdev.o
  CC sfc_mcdi.o
  CC bnxt_irq.o
  CC rte_eth_tap.o
  CC tap_flow.o
  CC tap_netlink.o
  CC tap_tcmsgs.o
  CC bnxt_util.o
  CC sfc_intr.o
  CC rte_pmd_bnxt.o
  CC bnxt_rxtx_vec_sse.o
  CC tf_core/tf_core.o
  PMDINFO rte_eth_ring.o.pmd.c
  CC rte_eth_ring.o.pmd.o
  LD rte_eth_ring.o
  AR librte_pmd_ring.a
  INSTALL-LIB librte_pmd_ring.a
  CC tf_core/bitalloc.o
  CC rte_pmd_ixgbe.o
  PMDINFO sfc_ethdev.o.pmd.c
  CC sfc_ethdev.o.pmd.o
  CC ixgbe_tm.o
  LD sfc_ethdev.o
  CC ixgbe_vf_representor.o
  CC tf_core/tf_msg.o
  CC sfc_ev.o
  CC tf_core/rand.o
  CC sfc_port.o
  CC tap_bpf_api.o
  CC tf_core/stack.o
  CC tap_intr.o
  CC sfc_rx.o
  CC tf_core/tf_em.o
  CC sfc_tx.o
  CC sfc_tso.o
  CC sfc_filter.o
  AR librte_pmd_ixgbe.a
  INSTALL-LIB librte_pmd_ixgbe.a
  CC tf_core/tf_rm.o
== Build drivers/net/thunderx
== Build drivers/net/vdev_netvsc
== Build drivers/net/virtio
  CC tf_core/tf_tbl.o
== Build drivers/net/vmxnet3
  CC nicvf_rxtx.o
  CC vdev_netvsc.o
  CC nicvf_hw.o
  CC virtqueue.o
  CC virtio_pci.o
  CC vmxnet3_rxtx.o
  CC vmxnet3_ethdev.o
  PMDINFO rte_eth_tap.o.pmd.c
  CC rte_eth_tap.o.pmd.o
  LD rte_eth_tap.o
  AR librte_pmd_tap.a
  INSTALL-LIB librte_pmd_tap.a
  CC sfc_flow.o
  CC sfc_dp.o
  CC ecore_cxt.o
  CC ecore_l2.o
  CC nicvf_mbox.o
  CC nicvf_ethdev.o
  CC sfc_ef10_rx.o
  PMDINFO vdev_netvsc.o.pmd.c
  CC vdev_netvsc.o.pmd.o
  CC virtio_rxtx.o
  LD vdev_netvsc.o
  AR librte_pmd_vdev_netvsc.a
  INSTALL-LIB librte_pmd_vdev_netvsc.a
  CC virtio_ethdev.o
== Build drivers/net/kni
== Build drivers/net/softnic
== Build drivers/net/vhost
  PMDINFO vmxnet3_ethdev.o.pmd.c
  CC vmxnet3_ethdev.o.pmd.o
  LD vmxnet3_ethdev.o
  CC tf_core/tfp.o
  CC rte_eth_kni.o
  SYMLINK-FILE include/rte_eth_softnic.h
  CC rte_eth_softnic.o
  SYMLINK-FILE include/rte_eth_vhost.h
  CC rte_eth_vhost.o
  CC rte_eth_softnic_mempool.o
  PMDINFO nicvf_ethdev.o.pmd.c
  CC nicvf_ethdev.o.pmd.o
  LD nicvf_ethdev.o
  CC nicvf_bsvf.o
  AR librte_pmd_vmxnet3_uio.a
  INSTALL-LIB librte_pmd_vmxnet3_uio.a
  CC rte_eth_softnic_swq.o
  CC nicvf_svf.o
  CC sfc_ef10_essb_rx.o
  CC tf_ulp/bnxt_ulp.o
  CC tf_ulp/ulp_mark_mgr.o
  PMDINFO rte_eth_softnic.o.pmd.c
  CC rte_eth_softnic.o.pmd.o
  LD rte_eth_softnic.o
  CC tf_ulp/ulp_flow_db.o
  CC sfc_ef10_tx.o
  PMDINFO rte_eth_kni.o.pmd.c
  CC rte_eth_kni.o.pmd.o
  CC efx_bootcfg.o
  CC ecore_sp_commands.o
  LD rte_eth_kni.o
  AR librte_pmd_kni.a
  INSTALL-LIB librte_pmd_kni.a
  CC efx_crc32.o
  AR librte_pmd_thunderx_nicvf.a
  INSTALL-LIB librte_pmd_thunderx_nicvf.a
  CC efx_ev.o
  CC rte_eth_softnic_link.o
  CC rte_eth_softnic_tm.o
  CC rte_eth_softnic_tap.o
  PMDINFO rte_eth_vhost.o.pmd.c
  CC rte_eth_vhost.o.pmd.o
  CC rte_eth_softnic_action.o
  LD rte_eth_vhost.o
  AR librte_pmd_vhost.a
  INSTALL-LIB librte_pmd_vhost.a
  CC rte_eth_softnic_pipeline.o
  PMDINFO virtio_ethdev.o.pmd.c
  CC virtio_ethdev.o.pmd.o
  CC ecore_init_fw_funcs.o
  CC ecore_spq.o
  CC ecore_init_ops.o
  LD virtio_ethdev.o
  CC ecore_mcp.o
  CC ecore_int.o
  CC tf_ulp/ulp_template_db.o
  CC tf_ulp/ulp_utils.o
  CC tf_ulp/ulp_mapper.o
  CC tf_ulp/ulp_matcher.o
  CC rte_eth_softnic_thread.o
  CC rte_eth_softnic_cli.o
  CC tf_ulp/ulp_rte_parser.o
  CC rte_eth_softnic_flow.o
  CC tf_ulp/bnxt_ulp_flow.o
  CC rte_eth_softnic_meter.o
  CC efx_evb.o
  CC efx_filter.o
  CC tf_ulp/ulp_port_db.o
  CC rte_eth_softnic_cryptodev.o
  CC ecore_dcbx.o
  CC bcm_osal.o
  CC efx_hash.o
  CC ecore_sriov.o
  CC parser.o
  CC ecore_vf.o
  CC conn.o
  CC virtio_rxtx_simple.o
  AR librte_pmd_bnxt.a
  CC virtio_rxtx_simple_sse.o
  INSTALL-LIB librte_pmd_bnxt.a
  CC virtio_user/vhost_user.o
  CC qede_ethdev.o
  CC virtio_user/vhost_kernel.o
  CC efx_intr.o
  CC efx_lic.o
  CC efx_mac.o
  CC efx_mcdi.o
  CC virtio_user/vhost_kernel_tap.o
  CC virtio_user/virtio_user_dev.o
  CC efx_mon.o
  CC virtio_user_ethdev.o
  CC efx_nic.o
  CC efx_nvram.o
  CC efx_phy.o
  AR librte_pmd_softnic.a
  INSTALL-LIB librte_pmd_softnic.a
  CC efx_port.o
  CC efx_proxy.o
  CC otx2_tx.o
  CC efx_rx.o
  CC otx2_tm.o
  PMDINFO virtio_user_ethdev.o.pmd.c
  CC virtio_user_ethdev.o.pmd.o
  LD virtio_user_ethdev.o
  CC otx2_rss.o
  CC otx2_mac.o
  CC otx2_ptp.o
  CC otx2_flow.o
  AR librte_pmd_virtio.a
  INSTALL-LIB librte_pmd_virtio.a
  CC qede_main.o
  CC qede_rxtx.o
  CC qede_filter.o
  CC otx2_link.o
  PMDINFO qede_ethdev.o.pmd.c
  CC qede_ethdev.o.pmd.o
  LD qede_ethdev.o
  CC otx2_vlan.o
  CC efx_sram.o
  CC otx2_stats.o
  CC efx_tunnel.o
  CC efx_tx.o
  CC efx_vpd.o
  CC mcdi_mon.o
  CC siena_mac.o
  CC otx2_mcast.o
  CC otx2_lookup.o
  CC otx2_ethdev.o
  CC siena_mcdi.o
  CC siena_nic.o
  CC siena_nvram.o
  CC siena_phy.o
  CC siena_sram.o
  CC siena_vpd.o
  CC otx2_flow_ctrl.o
  CC otx2_flow_parse.o
  CC ef10_ev.o
  CC otx2_flow_utils.o
  CC ef10_evb.o
  CC otx2_ethdev_irq.o
  CC otx2_ethdev_ops.o
  CC ef10_filter.o
  CC otx2_ethdev_sec.o
  CC otx2_ethdev_debug.o
  CC ef10_intr.o
  CC ef10_image.o
  AR librte_pmd_qede.a
  INSTALL-LIB librte_pmd_qede.a
  CC ef10_mac.o
  CC otx2_ethdev_devargs.o
  CC ef10_mcdi.o
  CC ef10_nic.o
  CC ef10_nvram.o
  CC ef10_phy.o
  CC ef10_proxy.o
  CC ef10_rx.o
  PMDINFO otx2_ethdev.o.pmd.c
  CC otx2_ethdev.o.pmd.o
  LD otx2_ethdev.o
  CC ef10_tx.o
  CC ef10_vpd.o
  CC hunt_nic.o
  CC medford_nic.o
  CC medford2_nic.o
  AR librte_pmd_sfc_efx.a
  INSTALL-LIB librte_pmd_sfc_efx.a
  AR librte_pmd_octeontx2.a
  INSTALL-LIB librte_pmd_octeontx2.a
== Build drivers/event
== Build drivers/event/dsw
== Build drivers/event/octeontx
== Build drivers/event/skeleton
== Build drivers/event/sw
== Build drivers/event/dpaa
== Build drivers/event/octeontx2
== Build drivers/event/dpaa2
== Build drivers/event/opdl
  CC dsw_evdev.o
  CC dsw_event.o
  CC dpaa_eventdev.o
  CC dsw_xstats.o
  CC skeleton_eventdev.o
  CC otx2_worker_dual.o
  CC dpaa2_hw_dpcon.o
  CC otx2_worker.o
  CC dpaa2_eventdev.o
  CC dpaa2_eventdev_selftest.o
  CC otx2_tim_worker.o
  CC ssovf_worker.o
  CC opdl_ring.o
  CC sw_evdev.o
  PMDINFO skeleton_eventdev.o.pmd.c
  CC skeleton_eventdev.o.pmd.o
  LD skeleton_eventdev.o
  AR librte_pmd_skeleton_event.a
  INSTALL-LIB librte_pmd_skeleton_event.a
  CC sw_evdev_worker.o
  CC sw_evdev_scheduler.o
  PMDINFO dpaa2_hw_dpcon.o.pmd.c
  CC dpaa2_hw_dpcon.o.pmd.o
  LD dpaa2_hw_dpcon.o
  CC sw_evdev_xstats.o
  PMDINFO dsw_evdev.o.pmd.c
  CC dsw_evdev.o.pmd.o
  LD dsw_evdev.o
  CC sw_evdev_selftest.o
  CC opdl_evdev.o
  PMDINFO sw_evdev.o.pmd.c
  CC sw_evdev.o.pmd.o
  PMDINFO dpaa2_eventdev.o.pmd.c
  CC dpaa2_eventdev.o.pmd.o
  LD sw_evdev.o
  LD dpaa2_eventdev.o
  CC opdl_evdev_init.o
  AR librte_pmd_dpaa2_event.a
  INSTALL-LIB librte_pmd_dpaa2_event.a
  CC opdl_evdev_xstats.o
  CC ssovf_evdev.o
  PMDINFO dpaa_eventdev.o.pmd.c
  CC dpaa_eventdev.o.pmd.o
  LD dpaa_eventdev.o
  PMDINFO opdl_evdev.o.pmd.c
  CC opdl_evdev.o.pmd.o
  LD opdl_evdev.o
  AR librte_pmd_dpaa_event.a
  INSTALL-LIB librte_pmd_dpaa_event.a
  CC otx2_evdev.o
  CC otx2_evdev_adptr.o
  CC otx2_tim_evdev.o
  CC otx2_evdev_selftest.o
  CC otx2_evdev_irq.o
  PMDINFO ssovf_evdev.o.pmd.c
  CC ssovf_evdev.o.pmd.o
  LD ssovf_evdev.o
  CC opdl_test.o
  CC ssovf_evdev_selftest.o
  CC ssovf_probe.o
  CC timvf_worker.o
  CC timvf_evdev.o
  CC timvf_probe.o
  AR librte_pmd_dsw_event.a
  INSTALL-LIB librte_pmd_dsw_event.a
  PMDINFO ssovf_probe.o.pmd.c
  CC ssovf_probe.o.pmd.o
  LD ssovf_probe.o
  AR librte_pmd_opdl_event.a
  INSTALL-LIB librte_pmd_opdl_event.a
  PMDINFO timvf_probe.o.pmd.c
  CC timvf_probe.o.pmd.o
  LD timvf_probe.o
  AR librte_pmd_octeontx_ssovf.a
  INSTALL-LIB librte_pmd_octeontx_ssovf.a
  AR librte_pmd_sw_event.a
  INSTALL-LIB librte_pmd_sw_event.a
  PMDINFO otx2_evdev.o.pmd.c
  CC otx2_evdev.o.pmd.o
  LD otx2_evdev.o
  AR librte_pmd_octeontx2_event.a
  INSTALL-LIB librte_pmd_octeontx2_event.a
== Build drivers/raw
== Build drivers/raw/skeleton
== Build drivers/raw/dpaa2_qdma
== Build drivers/raw/dpaa2_cmdif
== Build drivers/raw/octeontx2_ep
== Build drivers/raw/ioat
== Build drivers/raw/ntb
== Build drivers/raw/octeontx2_dma
  SYMLINK-FILE include/rte_pmd_ntb.h
  CC ntb.o
  CC ntb_hw_intel.o
  SYMLINK-FILE include/rte_pmd_dpaa2_qdma.h
  SYMLINK-FILE include/rte_pmd_dpaa2_cmdif.h
  CC otx2_dpi_rawdev.o
  CC dpaa2_qdma.o
  CC otx2_dpi_test.o
  CC otx2_dpi_msg.o
  CC dpaa2_cmdif.o
  SYMLINK-FILE include/rte_ioat_rawdev.h
  SYMLINK-FILE include/rte_ioat_spec.h
  CC ioat_rawdev.o
  CC otx2_ep_rawdev.o
  CC skeleton_rawdev.o
  CC skeleton_rawdev_test.o
  CC ioat_rawdev_test.o
  CC otx2_ep_enqdeq.o
  CC otx2_ep_test.o
  CC otx2_ep_vf.o
  PMDINFO dpaa2_cmdif.o.pmd.c
  CC dpaa2_cmdif.o.pmd.o
  LD dpaa2_cmdif.o
  AR librte_rawdev_dpaa2_cmdif.a
  INSTALL-LIB librte_rawdev_dpaa2_cmdif.a
  PMDINFO otx2_ep_rawdev.o.pmd.c
  CC otx2_ep_rawdev.o.pmd.o
  PMDINFO ioat_rawdev.o.pmd.c
  CC ioat_rawdev.o.pmd.o
  LD otx2_ep_rawdev.o
  LD ioat_rawdev.o
  PMDINFO skeleton_rawdev.o.pmd.c
  CC skeleton_rawdev.o.pmd.o
  LD skeleton_rawdev.o
  AR librte_rawdev_ioat.a
  INSTALL-LIB librte_rawdev_ioat.a
  AR librte_rawdev_skeleton.a
  INSTALL-LIB librte_rawdev_skeleton.a
  PMDINFO otx2_dpi_rawdev.o.pmd.c
  CC otx2_dpi_rawdev.o.pmd.o
  AR librte_rawdev_octeontx2_ep.a
  INSTALL-LIB librte_rawdev_octeontx2_ep.a
  LD otx2_dpi_rawdev.o
  AR librte_rawdev_octeontx2_dma.a
  INSTALL-LIB librte_rawdev_octeontx2_dma.a
  PMDINFO ntb.o.pmd.c
  CC ntb.o.pmd.o
  PMDINFO dpaa2_qdma.o.pmd.c
  CC dpaa2_qdma.o.pmd.o
  LD ntb.o
  LD dpaa2_qdma.o
  AR librte_rawdev_ntb.a
  AR librte_rawdev_dpaa2_qdma.a
  INSTALL-LIB librte_rawdev_ntb.a
  INSTALL-LIB librte_rawdev_dpaa2_qdma.a
== Build app
== Build app/test-pmd
== Build app/test
== Build app/proc-info
== Build app/pdump
== Build app/test-cmdline
== Build app/test-pipeline
== Build app/test-fib
== Build app/test-acl
== Build app/test-bbdev
== Build app/test-sad
== Build app/test-compress-perf
== Build app/test-crypto-perf
== Build app/test-eventdev
  CC main.o
  CC main.o
  CC config.o
  CC main.o
  CC main.o
  CC main.o
  CC cmdline_test.o
  CC main.o
  CC testpmd.o
  CC main.o
  CC main.o
  CC main.o
  CC evt_main.o
  CC commands.o
  CC commands.o
  LD cmdline_test
  CC test_bbdev.o
  CC evt_options.o
  LD testsad
  LD testacl
  CC test_bbdev_perf.o
  CC init.o
  LD dpdk-procinfo
  CC cperf_ops.o
  CC comp_perf_options_parse.o
  LD dpdk-pdump
  CC test.o
  CC resource.o
  CC evt_test.o
  INSTALL-APP cmdline_test
  CC test_resource.o
  INSTALL-MAP cmdline_test.map
  CC runtime.o
  CC pipeline_stub.o
  CC parser.o
  CC test_prefetch.o
  CC test_order_common.o
  CC test_byteorder.o
  CC test_per_lcore.o
  INSTALL-APP testsad
  INSTALL-MAP testsad.map
  CC cperf_options_parsing.o
  INSTALL-APP testacl
  LD testfib
  INSTALL-MAP testacl.map
  CC cperf_test_vectors.o
  CC test_order_queue.o
  CC cperf_test_throughput.o
  CC comp_perf_test_verify.o
  CC test_atomic.o
  INSTALL-APP dpdk-procinfo
  INSTALL-MAP dpdk-procinfo.map
  CC test_barrier.o
  CC comp_perf_test_throughput.o
  INSTALL-APP dpdk-pdump
  INSTALL-MAP dpdk-pdump.map
  CC test_malloc.o
  CC comp_perf_test_cyclecount.o
  CC pipeline_hash.o
  CC comp_perf_test_common.o
  CC cperf_test_latency.o
  CC cperf_test_pmd_cyclecount.o
  CC test_cycles.o
  INSTALL-APP testfib
  INSTALL-MAP testfib.map
  CC test_mcslock.o
  CC test_order_atq.o
  CC test_perf_common.o
  CC cperf_test_verify.o
  CC test_perf_queue.o
  CC test_spinlock.o
  CC test_perf_atq.o
  CC test_ticketlock.o
  CC pipeline_lpm.o
  CC pipeline_lpm_ipv6.o
  CC test_memory.o
  CC parameters.o
  CC cmdline.o
  CC test_bbdev_vector.o
  CC test_memzone.o
  CC cperf_test_vector_parsing.o
  CC cperf_test_common.o
  CC test_pipeline_common.o
  LD dpdk-test-compress-perf
  CC test_pipeline_queue.o
  CC pipeline_acl.o
  CC test_pipeline_atq.o
  CC test_bitmap.o
  CC test_reciprocal_division.o
  CC test_reciprocal_division_perf.o
  CC test_fbarray.o
  CC cmdline_flow.o
  CC cmdline_mtr.o
  CC cmdline_tm.o
  LD testpipeline
  LD dpdk-test-crypto-perf
  CC config.o
  INSTALL-APP dpdk-test-compress-perf
  INSTALL-MAP dpdk-test-compress-perf.map
  CC test_external_mem.o
  CC iofwd.o
  CC macfwd.o
  CC macswap.o
  LD dpdk-test-eventdev
  CC flowgen.o
  CC test_rand_perf.o
  CC test_ring.o
  CC test_ring_mpmc_stress.o
  INSTALL-APP testpipeline
  INSTALL-MAP testpipeline.map
  CC test_ring_hts_stress.o
  CC rxonly.o
  INSTALL-APP dpdk-test-crypto-perf
  INSTALL-MAP dpdk-test-crypto-perf.map
  CC txonly.o
  CC test_ring_perf.o
  CC test_ring_peek_stress.o
  CC test_ring_rts_stress.o
  CC csumonly.o
  INSTALL-APP dpdk-test-eventdev
  INSTALL-MAP dpdk-test-eventdev.map
  CC test_ring_stress.o
  CC test_pmd_perf.o
  CC icmpecho.o
  CC noisy_vnf.o
  CC test_table.o
  CC test_table_pipeline.o
  CC bpf_cmd.o
  CC util.o
  CC test_table_tables.o
  CC softnicfwd.o
  CC test_table_ports.o
  CC test_table_combined.o
  CC test_table_acl.o
  CC test_flow_classify.o
  CC test_rwlock.o
  CC test_stack.o
  CC test_stack_perf.o
  CC test_timer.o
  CC test_timer_perf.o
  CC test_timer_racecond.o
  CC test_timer_secondary.o
  CC test_mempool.o
  CC test_mempool_perf.o
  CC test_mbuf.o
  CC test_logs.o
  CC test_memcpy.o
  LD testbbdev
  CC test_memcpy_perf.o
  CC test_member.o
  CC test_member_perf.o
  CC test_efd.o
  CC test_efd_perf.o
  LD testpmd
  CC test_hash.o
  CC test_thash.o
  CC test_hash_perf.o
  CC test_hash_functions.o
  CC test_hash_multiwriter.o
  INSTALL-APP testbbdev
  CC test_hash_readwrite.o
  INSTALL-MAP testbbdev.map
  CC test_hash_readwrite_lf_perf.o
  CC test_rib.o
  CC test_rib6.o
  CC test_fib.o
  CC test_fib6.o
  CC test_fib_perf.o
  INSTALL-APP testpmd
  INSTALL-MAP testpmd.map
  CC test_fib6_perf.o
  CC test_lpm.o
  CC test_lpm_perf.o
  CC test_lpm6.o
  CC test_lpm6_perf.o
  CC test_debug.o
  CC test_errno.o
  CC test_tailq.o
  CC test_string_fns.o
  CC test_cpuflags.o
  CC test_mp_secondary.o
  CC test_eal_flags.o
  CC test_eal_fs.o
  CC test_alarm.o
  CC test_interrupts.o
  CC test_version.o
  CC test_func_reentrancy.o
  CC test_trace.o
  CC test_trace_register.o
  CC test_trace_perf.o
  CC test_service_cores.o
  CC sample_packet_forward.o
  CC test_bitratestats.o
  CC test_latencystats.o
  CC test_pdump.o
  CC test_cmdline.o
  CC test_cmdline_num.o
  CC test_cmdline_etheraddr.o
  CC test_cmdline_portlist.o
  CC test_cmdline_ipaddr.o
  CC test_cmdline_cirbuf.o
  CC test_cmdline_string.o
  CC test_cmdline_lib.o
  CC test_crc.o
  CC test_red.o
  CC test_sched.o
  CC test_meter.o
  CC test_kni.o
  CC test_power.o
  CC test_power_cpufreq.o
  CC test_power_kvm_vm.o
  CC test_common.o
  CC test_distributor.o
  CC test_distributor_perf.o
  CC test_reorder.o
  CC virtual_pmd.o
  CC packet_burst_generator.o
  CC test_acl.o
  CC test_link_bonding.o
  CC test_link_bonding_mode4.o
  CC test_link_bonding_rssconf.o
  CC test_pmd_ring.o
  CC test_pmd_ring_perf.o
  CC test_cryptodev_blockcipher.o
  CC test_cryptodev.o
  CC test_cryptodev_asym.o
  CC test_cryptodev_security_pdcp.o
  CC test_metrics.o
  CC test_eventdev.o
  CC test_event_ring.o
  CC test_event_eth_rx_adapter.o
  CC test_event_eth_tx_adapter.o
  CC test_event_timer_adapter.o
  CC test_event_crypto_adapter.o
  CC test_graph.o
  CC test_graph_perf.o
  CC test_rawdev.o
  CC test_kvargs.o
  CC test_bpf.o
  CC test_rcu_qsbr.o
  CC test_rcu_qsbr_perf.o
  CC test_security.o
  CC test_ipsec.o
  CC test_ipsec_perf.o
  CC test_ipsec_sad.o
  MKRES test_resource_c.res.o
  LD test
  INSTALL-APP test
  INSTALL-MAP test.map
Build complete [x86_64-native-linuxapp-gcc]
Installation cannot run with T defined and DESTDIR undefined
12/05/2020 13:40:18             dut.10.240.183.202: make -j 14 app/test_sub O=x86_64-native-linuxapp-gcc
12/05/2020 13:40:20             dut.10.240.183.202: app/test_sub
== Build app/test
  LD test
  INSTALL-APP test
  INSTALL-MAP test.map
12/05/2020 13:40:20             dut.10.240.183.202: mv -f ./x86_64-native-linuxapp-gcc/app/test ./app/test/test_scalar
12/05/2020 13:40:20             dut.10.240.183.202: 
12/05/2020 13:40:20             dut.10.240.183.202: sed -i -e 's/CONFIG_RTE_IXGBE_INC_VECTOR=n/CONFIG_RTE_IXGBE_INC_VECTOR=y/' config/common_base
12/05/2020 13:40:20             dut.10.240.183.202: 
12/05/2020 13:40:20             dut.10.240.183.202: sed -i 's/CONFIG_RTE_EAL_IGB_UIO=n/CONFIG_RTE_EAL_IGB_UIO=y/g' config/common_base
12/05/2020 13:40:20             dut.10.240.183.202: 
12/05/2020 13:40:20             dut.10.240.183.202: rm -rf x86_64-native-linuxapp-gcc
12/05/2020 13:40:21             dut.10.240.183.202: 
12/05/2020 13:40:21             dut.10.240.183.202: rm -rf ./app/test/test_resource_c.res.o
12/05/2020 13:40:21             dut.10.240.183.202: 
12/05/2020 13:40:21             dut.10.240.183.202: rm -rf ./app/test/test_resource_tar.res.o
12/05/2020 13:40:21             dut.10.240.183.202: 
12/05/2020 13:40:21             dut.10.240.183.202: rm -rf ./app/test/test_pci_sysfs.res.o
12/05/2020 13:40:21             dut.10.240.183.202: 
12/05/2020 13:40:21             dut.10.240.183.202: make -j 14 install T=x86_64-native-linuxapp-gcc 
12/05/2020 13:44:17             dut.10.240.183.202: Configuration done using x86_64-native-linuxapp-gcc
== Build lib
== Build lib/librte_telemetry
== Build lib/librte_kvargs
  SYMLINK-FILE include/rte_telemetry.h
  CC telemetry.o
  CC telemetry_data.o
  CC telemetry_legacy.o
  SYMLINK-FILE include/rte_kvargs.h
  CC rte_kvargs.o
  AR librte_kvargs.a
  INSTALL-LIB librte_kvargs.a
  AR librte_telemetry.a
  INSTALL-LIB librte_telemetry.a
== Build lib/librte_eal
== Build lib/librte_eal/include
  SYMLINK-FILE include/rte_alarm.h
  SYMLINK-FILE include/rte_bitmap.h
  SYMLINK-FILE include/rte_branch_prediction.h
  SYMLINK-FILE include/rte_bus.h
  SYMLINK-FILE include/rte_class.h
  SYMLINK-FILE include/rte_common.h
  SYMLINK-FILE include/rte_compat.h
  SYMLINK-FILE include/rte_debug.h
  SYMLINK-FILE include/rte_dev.h
  SYMLINK-FILE include/rte_devargs.h
  SYMLINK-FILE include/rte_eal.h
  SYMLINK-FILE include/rte_eal_interrupts.h
  SYMLINK-FILE include/rte_eal_memconfig.h
  SYMLINK-FILE include/rte_eal_trace.h
  SYMLINK-FILE include/rte_errno.h
  SYMLINK-FILE include/rte_fbarray.h
  SYMLINK-FILE include/rte_function_versioning.h
  SYMLINK-FILE include/rte_hexdump.h
  SYMLINK-FILE include/rte_hypervisor.h
  SYMLINK-FILE include/rte_interrupts.h
  SYMLINK-FILE include/rte_keepalive.h
  SYMLINK-FILE include/rte_launch.h
  SYMLINK-FILE include/rte_lcore.h
  SYMLINK-FILE include/rte_log.h
  SYMLINK-FILE include/rte_malloc.h
  SYMLINK-FILE include/rte_memory.h
  SYMLINK-FILE include/rte_memzone.h
  SYMLINK-FILE include/rte_pci_dev_feature_defs.h
  SYMLINK-FILE include/rte_pci_dev_features.h
  SYMLINK-FILE include/rte_per_lcore.h
  SYMLINK-FILE include/rte_random.h
  SYMLINK-FILE include/rte_reciprocal.h
  SYMLINK-FILE include/rte_service.h
  SYMLINK-FILE include/rte_service_component.h
  SYMLINK-FILE include/rte_string_fns.h
  SYMLINK-FILE include/rte_tailq.h
  SYMLINK-FILE include/rte_test.h
  SYMLINK-FILE include/rte_time.h
  SYMLINK-FILE include/rte_trace.h
  SYMLINK-FILE include/rte_trace_point.h
  SYMLINK-FILE include/rte_trace_point_register.h
  SYMLINK-FILE include/rte_uuid.h
  SYMLINK-FILE include/rte_version.h
  SYMLINK-FILE include/rte_vfio.h
  SYMLINK-FILE include/rte_atomic.h
  SYMLINK-FILE include/rte_atomic_32.h
  SYMLINK-FILE include/rte_atomic_64.h
  SYMLINK-FILE include/rte_byteorder.h
  SYMLINK-FILE include/rte_byteorder_32.h
  SYMLINK-FILE include/rte_byteorder_64.h
  SYMLINK-FILE include/rte_cpuflags.h
  SYMLINK-FILE include/rte_cycles.h
  SYMLINK-FILE include/rte_io.h
  SYMLINK-FILE include/rte_mcslock.h
  SYMLINK-FILE include/rte_memcpy.h
  SYMLINK-FILE include/rte_pause.h
  SYMLINK-FILE include/rte_prefetch.h
  SYMLINK-FILE include/rte_rtm.h
  SYMLINK-FILE include/rte_rwlock.h
  SYMLINK-FILE include/rte_spinlock.h
  SYMLINK-FILE include/rte_ticketlock.h
  SYMLINK-FILE include/rte_vect.h
  SYMLINK-FILE include/generic/rte_atomic.h
  SYMLINK-FILE include/generic/rte_byteorder.h
  SYMLINK-FILE include/generic/rte_cpuflags.h
  SYMLINK-FILE include/generic/rte_cycles.h
  SYMLINK-FILE include/generic/rte_io.h
  SYMLINK-FILE include/generic/rte_mcslock.h
  SYMLINK-FILE include/generic/rte_memcpy.h
  SYMLINK-FILE include/generic/rte_pause.h
  SYMLINK-FILE include/generic/rte_prefetch.h
  SYMLINK-FILE include/generic/rte_rwlock.h
  SYMLINK-FILE include/generic/rte_spinlock.h
  SYMLINK-FILE include/generic/rte_ticketlock.h
  SYMLINK-FILE include/generic/rte_vect.h
== Build lib/librte_eal/linux
  SYMLINK-FILE include/rte_kni_common.h
  SYMLINK-FILE include/rte_os.h
  CC eal_cpuflags.o
  CC eal.o
  CC eal_hugepage_info.o
  CC eal_memory.o
  CC eal_thread.o
  CC eal_log.o
  CC eal_vfio.o
  CC eal_vfio_mp_sync.o
  CC eal_memalloc.o
  CC eal_debug.o
  CC eal_lcore.o
  CC eal_timer.o
  CC eal_interrupts.o
  CC eal_alarm.o
  CC eal_dev.o
  CC eal_common_lcore.o
  CC eal_common_timer.o
  CC eal_common_memzone.o
  CC eal_common_log.o
  CC eal_common_launch.o
  CC eal_common_mcfg.o
  CC eal_common_memalloc.o
  CC eal_common_memory.o
  CC eal_common_tailqs.o
  CC eal_common_errno.o
  CC eal_common_cpuflags.o
  CC eal_common_hypervisor.o
  CC eal_common_string_fns.o
  CC eal_common_hexdump.o
  CC eal_common_devargs.o
  CC eal_common_class.o
  CC eal_common_bus.o
  CC eal_common_dev.o
  CC eal_common_options.o
  CC eal_common_thread.o
  CC eal_common_proc.o
  CC eal_common_fbarray.o
  CC eal_common_uuid.o
  CC eal_common_trace.o
  CC eal_common_trace_ctf.o
  CC eal_common_trace_points.o
  CC eal_common_trace_utils.o
  CC rte_malloc.o
  CC hotplug_mp.o
  CC malloc_elem.o
  CC malloc_heap.o
  CC malloc_mp.o
  CC rte_keepalive.o
  CC rte_service.o
  CC rte_random.o
  CC rte_reciprocal.o
  CC rte_cpuflags.o
  CC rte_hypervisor.o
  CC rte_spinlock.o
  CC rte_cycles.o
  AR librte_eal.a
  INSTALL-LIB librte_eal.a
== Build lib/librte_pci
== Build lib/librte_ring
== Build lib/librte_timer
== Build lib/librte_stack
== Build lib/librte_cfgfile
== Build lib/librte_acl
== Build lib/librte_meter
== Build lib/librte_jobstats
== Build lib/librte_graph
  SYMLINK-FILE include/rte_meter.h
  CC rte_meter.o
  SYMLINK-FILE include/rte_cfgfile.h
  SYMLINK-FILE include/rte_pci.h
  CC rte_cfgfile.o
  CC rte_pci.o
  SYMLINK-FILE include/rte_timer.h
  SYMLINK-FILE include/rte_ring.h
  SYMLINK-FILE include/rte_ring_core.h
  SYMLINK-FILE include/rte_stack.h
  SYMLINK-FILE include/rte_ring_elem.h
  CC rte_timer.o
  SYMLINK-FILE include/rte_graph.h
  SYMLINK-FILE include/rte_ring_generic.h
  SYMLINK-FILE include/rte_graph_worker.h
  SYMLINK-FILE include/rte_jobstats.h
  SYMLINK-FILE include/rte_stack_std.h
  CC node.o
  SYMLINK-FILE include/rte_stack_lf.h
  CC graph.o
  CC graph_ops.o
  SYMLINK-FILE include/rte_acl_osdep.h
  SYMLINK-FILE include/rte_ring_c11_mem.h
  SYMLINK-FILE include/rte_stack_lf_generic.h
  CC rte_jobstats.o
  SYMLINK-FILE include/rte_acl.h
  SYMLINK-FILE include/rte_stack_lf_c11.h
  SYMLINK-FILE include/rte_stack_lf_stubs.h
  SYMLINK-FILE include/rte_ring_hts.h
  SYMLINK-FILE include/rte_ring_hts_c11_mem.h
  CC rte_stack.o
  CC tb_mem.o
  CC rte_acl.o
  SYMLINK-FILE include/rte_ring_peek.h
  CC rte_stack_std.o
  CC rte_stack_lf.o
  SYMLINK-FILE include/rte_ring_peek_c11_mem.h
  SYMLINK-FILE include/rte_ring_rts.h
  SYMLINK-FILE include/rte_ring_rts_c11_mem.h
  CC rte_ring.o
  CC acl_bld.o
  CC acl_gen.o
  AR librte_pci.a
  INSTALL-LIB librte_pci.a
  CC acl_run_scalar.o
  AR librte_meter.a
  AR librte_stack.a
  INSTALL-LIB librte_meter.a
  INSTALL-LIB librte_stack.a
  CC acl_run_sse.o
  CC acl_run_avx2.o
  AR librte_ring.a
  INSTALL-LIB librte_ring.a
  CC graph_debug.o
  AR librte_cfgfile.a
  INSTALL-LIB librte_cfgfile.a
== Build lib/librte_mempool
== Build lib/librte_hash
== Build lib/librte_rcu
  CC graph_stats.o
  AR librte_jobstats.a
  INSTALL-LIB librte_jobstats.a
  CC graph_populate.o
  SYMLINK-FILE include/rte_mempool.h
  SYMLINK-FILE include/rte_mempool_trace.h
  SYMLINK-FILE include/rte_mempool_trace_fp.h
  AR librte_timer.a
  INSTALL-LIB librte_timer.a
  CC rte_mempool.o
  CC rte_mempool_ops.o
== Build lib/librte_power
  SYMLINK-FILE include/rte_hash.h
  SYMLINK-FILE include/rte_hash_crc.h
  SYMLINK-FILE include/rte_jhash.h
  SYMLINK-FILE include/rte_thash.h
  SYMLINK-FILE include/rte_fbk_hash.h
  CC rte_cuckoo_hash.o
  SYMLINK-FILE include/rte_rcu_qsbr.h
  CC rte_rcu_qsbr.o
  CC rte_fbk_hash.o
  CC rte_mempool_ops_default.o
  SYMLINK-FILE include/rte_power.h
  CC mempool_trace_points.o
  SYMLINK-FILE include/rte_power_empty_poll.h
  CC rte_power.o
  CC power_acpi_cpufreq.o
  CC power_kvm_vm.o
  CC guest_channel.o
  CC rte_power_empty_poll.o
  CC power_pstate_cpufreq.o
  AR librte_graph.a
  INSTALL-LIB librte_graph.a
  AR librte_rcu.a
  INSTALL-LIB librte_rcu.a
  AR librte_mempool.a
  INSTALL-LIB librte_mempool.a
== Build lib/librte_rib
== Build lib/librte_mbuf
  AR librte_power.a
  INSTALL-LIB librte_power.a
  SYMLINK-FILE include/rte_mbuf_core.h
  SYMLINK-FILE include/rte_mbuf.h
  SYMLINK-FILE include/rte_mbuf_ptype.h
  SYMLINK-FILE include/rte_mbuf_dyn.h
  SYMLINK-FILE include/rte_mbuf_pool_ops.h
  CC rte_mbuf.o
  CC rte_mbuf_ptype.o
  CC rte_mbuf_pool_ops.o
  CC rte_mbuf_dyn.o
  SYMLINK-FILE include/rte_rib.h
  SYMLINK-FILE include/rte_rib6.h
  CC rte_rib.o
  CC rte_rib6.o
  AR librte_acl.a
  INSTALL-LIB librte_acl.a
  AR librte_hash.a
  INSTALL-LIB librte_hash.a
== Build lib/librte_efd
== Build lib/librte_lpm
== Build lib/librte_member
  AR librte_rib.a
  SYMLINK-FILE include/rte_efd.h
  SYMLINK-FILE include/rte_member.h
  CC rte_efd.o
  CC rte_member.o
  INSTALL-LIB librte_rib.a
  CC rte_member_ht.o
  SYMLINK-FILE include/rte_lpm.h
  CC rte_member_vbf.o
  SYMLINK-FILE include/rte_lpm_sse.h
  SYMLINK-FILE include/rte_lpm6.h
  CC rte_lpm.o
== Build lib/librte_fib
  CC rte_lpm6.o
  AR librte_mbuf.a
  INSTALL-LIB librte_mbuf.a
== Build lib/librte_compressdev
== Build lib/librte_net
== Build lib/librte_bbdev
== Build lib/librte_cryptodev
== Build lib/librte_reorder
  SYMLINK-FILE include/rte_fib.h
  SYMLINK-FILE include/rte_fib6.h
  CC rte_fib.o
  CC rte_fib6.o
  CC dir24_8.o
  CC trie.o
  SYMLINK-FILE include/rte_bbdev_op.h
  SYMLINK-FILE include/rte_ip.h
  SYMLINK-FILE include/rte_comp.h
  SYMLINK-FILE include/rte_bbdev.h
  SYMLINK-FILE include/rte_tcp.h
  SYMLINK-FILE include/rte_reorder.h
  SYMLINK-FILE include/rte_compressdev.h
  SYMLINK-FILE include/rte_bbdev_pmd.h
  SYMLINK-FILE include/rte_crypto.h
  SYMLINK-FILE include/rte_udp.h
  CC rte_reorder.o
  SYMLINK-FILE include/rte_compressdev_pmd.h
  SYMLINK-FILE include/rte_esp.h
  CC rte_bbdev.o
  SYMLINK-FILE include/rte_crypto_asym.h
  SYMLINK-FILE include/rte_compressdev_internal.h
  SYMLINK-FILE include/rte_sctp.h
  SYMLINK-FILE include/rte_crypto_sym.h
  CC rte_compressdev.o
  SYMLINK-FILE include/rte_icmp.h
  SYMLINK-FILE include/rte_cryptodev.h
  SYMLINK-FILE include/rte_arp.h
  SYMLINK-FILE include/rte_cryptodev_pmd.h
  SYMLINK-FILE include/rte_ether.h
  SYMLINK-FILE include/rte_cryptodev_trace.h
  SYMLINK-FILE include/rte_gre.h
  SYMLINK-FILE include/rte_cryptodev_trace_fp.h
  SYMLINK-FILE include/rte_net.h
  CC rte_cryptodev.o
  SYMLINK-FILE include/rte_net_crc.h
  SYMLINK-FILE include/rte_mpls.h
  SYMLINK-FILE include/rte_higig.h
  SYMLINK-FILE include/rte_gtp.h
  SYMLINK-FILE include/rte_vxlan.h
  CC rte_net.o
  CC rte_cryptodev_pmd.o
  CC cryptodev_trace_points.o
  CC rte_net_crc.o
  CC rte_ether.o
  CC rte_arp.o
  AR librte_lpm.a
  INSTALL-LIB librte_lpm.a
  CC rte_compressdev_pmd.o
  AR librte_reorder.a
  INSTALL-LIB librte_reorder.a
  CC rte_comp.o
  AR librte_member.a
  INSTALL-LIB librte_member.a
  AR librte_efd.a
  INSTALL-LIB librte_efd.a
  AR librte_fib.a
  INSTALL-LIB librte_fib.a
  AR librte_bbdev.a
  INSTALL-LIB librte_bbdev.a
  AR librte_net.a
  INSTALL-LIB librte_net.a
== Build lib/librte_ethdev
== Build lib/librte_cmdline
== Build lib/librte_sched
  AR librte_compressdev.a
  INSTALL-LIB librte_compressdev.a
  SYMLINK-FILE include/cmdline.h
  SYMLINK-FILE include/cmdline_parse.h
  SYMLINK-FILE include/cmdline_parse_num.h
  SYMLINK-FILE include/cmdline_parse_ipaddr.h
  SYMLINK-FILE include/cmdline_parse_etheraddr.h
  SYMLINK-FILE include/cmdline_parse_string.h
  SYMLINK-FILE include/cmdline_rdline.h
  SYMLINK-FILE include/cmdline_vt100.h
  SYMLINK-FILE include/cmdline_socket.h
  SYMLINK-FILE include/cmdline_cirbuf.h
  SYMLINK-FILE include/cmdline_parse_portlist.h
  CC cmdline.o
  CC cmdline_cirbuf.o
  CC cmdline_parse.o
  CC cmdline_parse_etheraddr.o
  CC cmdline_parse_ipaddr.o
  CC cmdline_parse_num.o
  CC cmdline_parse_string.o
  CC cmdline_rdline.o
  SYMLINK-FILE include/rte_ethdev.h
  SYMLINK-FILE include/rte_ethdev_driver.h
  CC cmdline_vt100.o
  CC cmdline_socket.o
  SYMLINK-FILE include/rte_sched.h
  SYMLINK-FILE include/rte_sched_common.h
  SYMLINK-FILE include/rte_ethdev_core.h
  SYMLINK-FILE include/rte_red.h
  SYMLINK-FILE include/rte_ethdev_pci.h
  CC cmdline_parse_portlist.o
  SYMLINK-FILE include/rte_approx.h
  SYMLINK-FILE include/rte_ethdev_trace.h
  CC rte_sched.o
  SYMLINK-FILE include/rte_ethdev_trace_fp.h
  SYMLINK-FILE include/rte_ethdev_vdev.h
  AR librte_cryptodev.a
  SYMLINK-FILE include/rte_eth_ctrl.h
  INSTALL-LIB librte_cryptodev.a
  SYMLINK-FILE include/rte_dev_info.h
  CC rte_red.o
  SYMLINK-FILE include/rte_flow.h
  SYMLINK-FILE include/rte_flow_driver.h
  SYMLINK-FILE include/rte_tm.h
  SYMLINK-FILE include/rte_tm_driver.h
  SYMLINK-FILE include/rte_mtr.h
  SYMLINK-FILE include/rte_mtr_driver.h
  CC rte_approx.o
  CC ethdev_private.o
  CC rte_ethdev.o
  CC rte_class_eth.o
  CC rte_flow.o
  CC rte_tm.o
  CC rte_mtr.o
  CC ethdev_profile.o
  CC ethdev_trace_points.o
  AR librte_cmdline.a
  INSTALL-LIB librte_cmdline.a
  AR librte_sched.a
  INSTALL-LIB librte_sched.a
  AR librte_ethdev.a
  INSTALL-LIB librte_ethdev.a
== Build lib/librte_security
== Build lib/librte_rawdev
== Build lib/librte_eventdev
== Build lib/librte_vhost
== Build lib/librte_gro
== Build lib/librte_ip_frag
== Build lib/librte_metrics
== Build lib/librte_kni
== Build lib/librte_pdump
== Build lib/librte_distributor
== Build lib/librte_gso
== Build lib/librte_bpf
== Build lib/librte_node
  SYMLINK-FILE include/rte_rawdev.h
  SYMLINK-FILE include/rte_rawdev_pmd.h
  SYMLINK-FILE include/rte_metrics.h
  SYMLINK-FILE include/rte_gro.h
  SYMLINK-FILE include/rte_eventdev.h
  SYMLINK-FILE include/rte_kni.h
  SYMLINK-FILE include/rte_distributor.h
  SYMLINK-FILE include/rte_security.h
  SYMLINK-FILE include/bpf_def.h
  SYMLINK-FILE include/rte_pdump.h
  SYMLINK-FILE include/rte_node_ip4_api.h
  SYMLINK-FILE include/rte_gso.h
  SYMLINK-FILE include/rte_bpf.h
  CC rte_metrics.o
  SYMLINK-FILE include/rte_ip_frag.h
  CC rte_rawdev.o
  CC rte_gro.o
  SYMLINK-FILE include/rte_eventdev_pmd.h
  SYMLINK-FILE include/rte_security_driver.h
  CC rte_ipv4_fragmentation.o
  CC rte_distributor_single.o
  CC rte_kni.o
  SYMLINK-FILE include/rte_node_eth_api.h
  CC rte_gso.o
  CC rte_pdump.o
  SYMLINK-FILE include/rte_bpf_ethdev.h
  SYMLINK-FILE include/rte_vhost.h
  SYMLINK-FILE include/rte_eventdev_pmd_pci.h
  SYMLINK-FILE include/rte_vdpa.h
  CC rte_security.o
  CC null.o
  CC bpf.o
  SYMLINK-FILE include/rte_eventdev_pmd_vdev.h
  CC bpf_exec.o
  SYMLINK-FILE include/rte_vhost_crypto.h
  SYMLINK-FILE include/rte_eventdev_trace.h
  CC fd_man.o
  SYMLINK-FILE include/rte_eventdev_trace_fp.h
  SYMLINK-FILE include/rte_event_ring.h
  SYMLINK-FILE include/rte_event_eth_rx_adapter.h
  SYMLINK-FILE include/rte_event_timer_adapter.h
  SYMLINK-FILE include/rte_event_timer_adapter_pmd.h
  SYMLINK-FILE include/rte_event_crypto_adapter.h
  SYMLINK-FILE include/rte_event_eth_tx_adapter.h
  CC rte_eventdev.o
  CC log.o
  AR librte_metrics.a
  INSTALL-LIB librte_metrics.a
  CC rte_event_ring.o
  CC iotlb.o
  CC socket.o
  CC bpf_load.o
  CC gso_common.o
  CC ethdev_rx.o
  CC gro_tcp4.o
  AR librte_security.a
  INSTALL-LIB librte_security.a
  CC gro_vxlan_tcp4.o
  CC rte_distributor.o
== Build lib/librte_bitratestats
  AR librte_rawdev.a
  CC rte_ipv6_fragmentation.o
  INSTALL-LIB librte_rawdev.a
  CC rte_ipv4_reassembly.o
  AR librte_pdump.a
  SYMLINK-FILE include/rte_bitrate.h
  INSTALL-LIB librte_pdump.a
  CC rte_bitrate.o
  CC bpf_pkt.o
== Build lib/librte_latencystats
  AR librte_kni.a
  INSTALL-LIB librte_kni.a
  CC bpf_validate.o
  CC rte_distributor_match_sse.o
  CC rte_ipv6_reassembly.o
  CC rte_ip_frag_common.o
  SYMLINK-FILE include/rte_latencystats.h
  CC rte_latencystats.o
  CC ethdev_tx.o
  AR librte_gro.a
  INSTALL-LIB librte_gro.a
  CC ethdev_ctrl.o
  CC vhost.o
  CC eventdev_trace_points.o
  CC gso_tcp4.o
  AR librte_bitratestats.a
  INSTALL-LIB librte_bitratestats.a
  CC gso_tunnel_tcp4.o
  CC gso_udp4.o
  CC rte_event_eth_rx_adapter.o
  CC rte_event_timer_adapter.o
  AR librte_distributor.a
  INSTALL-LIB librte_distributor.a
  CC rte_event_crypto_adapter.o
== Build lib/librte_ipsec
  CC ip4_lookup.o
  CC ip_frag_internal.o
  AR librte_latencystats.a
  INSTALL-LIB librte_latencystats.a
  CC ip4_rewrite.o
  CC vhost_user.o
  CC virtio_net.o
  CC rte_event_eth_tx_adapter.o
  CC bpf_jit_x86.o
  SYMLINK-FILE include/rte_ipsec.h
  AR librte_gso.a
  INSTALL-LIB librte_gso.a
  SYMLINK-FILE include/rte_ipsec_group.h
  SYMLINK-FILE include/rte_ipsec_sa.h
  CC vdpa.o
  CC vhost_crypto.o
  SYMLINK-FILE include/rte_ipsec_sad.h
  CC esp_inb.o
  AR librte_ip_frag.a
  INSTALL-LIB librte_ip_frag.a
  CC esp_outb.o
  CC sa.o
  CC ses.o
  CC ipsec_sad.o
  AR librte_bpf.a
  INSTALL-LIB librte_bpf.a
  CC pkt_drop.o
  AR librte_node.a
  INSTALL-LIB librte_node.a
  AR librte_ipsec.a
  INSTALL-LIB librte_ipsec.a
  AR librte_eventdev.a
  INSTALL-LIB librte_eventdev.a
== Build lib/librte_port
  SYMLINK-FILE include/rte_port.h
  SYMLINK-FILE include/rte_port_ethdev.h
  SYMLINK-FILE include/rte_port_ring.h
  SYMLINK-FILE include/rte_port_ras.h
  SYMLINK-FILE include/rte_port_sched.h
  SYMLINK-FILE include/rte_port_frag.h
  SYMLINK-FILE include/rte_port_fd.h
  SYMLINK-FILE include/rte_port_source_sink.h
  SYMLINK-FILE include/rte_port_kni.h
  SYMLINK-FILE include/rte_port_sym_crypto.h
  SYMLINK-FILE include/rte_port_eventdev.h
  CC rte_port_ethdev.o
  CC rte_port_ring.o
  CC rte_port_frag.o
  CC rte_port_ras.o
  CC rte_port_sched.o
  CC rte_port_fd.o
  CC rte_port_kni.o
  CC rte_port_source_sink.o
  CC rte_port_sym_crypto.o
  CC rte_port_eventdev.o
  AR librte_port.a
  INSTALL-LIB librte_port.a
== Build lib/librte_table
  AR librte_vhost.a
  INSTALL-LIB librte_vhost.a
  SYMLINK-FILE include/rte_table.h
  SYMLINK-FILE include/rte_table_lpm.h
  SYMLINK-FILE include/rte_table_lpm_ipv6.h
  SYMLINK-FILE include/rte_table_acl.h
  SYMLINK-FILE include/rte_table_hash.h
  SYMLINK-FILE include/rte_table_hash_cuckoo.h
  SYMLINK-FILE include/rte_table_hash_func.h
  SYMLINK-FILE include/rte_table_hash_func_arm64.h
  SYMLINK-FILE include/rte_lru.h
  SYMLINK-FILE include/rte_lru_x86.h
  SYMLINK-FILE include/rte_table_array.h
  SYMLINK-FILE include/rte_table_stub.h
  CC rte_table_lpm.o
  CC rte_table_lpm_ipv6.o
  CC rte_table_acl.o
  CC rte_table_hash_cuckoo.o
  CC rte_table_hash_key8.o
  CC rte_table_hash_key16.o
  CC rte_table_hash_key32.o
  CC rte_table_hash_ext.o
  CC rte_table_hash_lru.o
  CC rte_table_array.o
  CC rte_table_stub.o
  AR librte_table.a
  INSTALL-LIB librte_table.a
== Build lib/librte_flow_classify
== Build lib/librte_pipeline
  SYMLINK-FILE include/rte_pipeline.h
  SYMLINK-FILE include/rte_port_in_action.h
  SYMLINK-FILE include/rte_table_action.h
  CC rte_pipeline.o
  CC rte_port_in_action.o
  CC rte_table_action.o
  SYMLINK-FILE include/rte_flow_classify.h
  CC rte_flow_classify.o
  CC rte_flow_classify_parse.o
  AR librte_flow_classify.a
  INSTALL-LIB librte_flow_classify.a
  AR librte_pipeline.a
  INSTALL-LIB librte_pipeline.a
== Build buildtools
== Build kernel
== Build buildtools/pmdinfogen
== Build kernel/linux
  HOSTCC pmdinfogen.o
== Build kernel/linux/igb_uio
  HOSTLD dpdk-pmdinfogen
  INSTALL-HOSTAPP dpdk-pmdinfogen
== Build drivers
== Build drivers/common
== Build drivers/common/cpt
== Build drivers/common/octeontx
== Build drivers/common/iavf
== Build drivers/common/dpaax
== Build drivers/common/octeontx2
  CC cpt_fpm_tables.o
  CC cpt_pmd_ops_helper.o
  CC octeontx_mbox.o
  CC iavf_adminq.o
  CC iavf_common.o
  CC otx2_dev.o
  CC dpaax_iova_table.o
  CC dpaa_of.o
  CC otx2_irq.o
  CC iavf_impl.o
  CC otx2_common.o
  CC otx2_mbox.o
  CC otx2_sec_idev.o
  AR librte_common_octeontx.a
  INSTALL-LIB librte_common_octeontx.a
  AR librte_common_dpaax.a
  INSTALL-LIB librte_common_dpaax.a
  AR librte_common_cpt.a
  INSTALL-LIB librte_common_cpt.a
  AR librte_common_octeontx2.a
  INSTALL-LIB librte_common_octeontx2.a
  AR librte_common_iavf.a
  INSTALL-LIB librte_common_iavf.a
== Build drivers/bus
  AR      /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/built-in.a
  CC [M]  /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/igb_uio.o
== Build drivers/bus/pci
== Build drivers/bus/ifpga
== Build drivers/bus/vmbus
== Build drivers/bus/vdev
== Build drivers/bus/dpaa
== Build drivers/bus/fslmc
  SYMLINK-FILE include/rte_bus_vdev.h
  CC vdev.o
  CC vdev_params.o
  CC dpaa_bus.o
  CC base/fman/fman.o
  CC base/fman/fman_hw.o
  SYMLINK-FILE include/rte_bus_ifpga.h
  CC base/fman/netcfg_layer.o
  SYMLINK-FILE include/rte_bus_pci.h
  CC base/qbman/process.o
  CC ifpga_bus.o
  CC base/qbman/bman.o
  CC qbman/qbman_portal.o
  CC qbman/qbman_debug.o
  CC linux/pci.o
  SYMLINK-FILE include/rte_bus_vmbus.h
  SYMLINK-FILE include/rte_vmbus_reg.h
  CC linux/vmbus_bus.o
  CC linux/pci_uio.o
  CC linux/pci_vfio.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC mc/dpmng.o
  CC ifpga_common.o
  CC linux/vmbus_uio.o
  CC vmbus_common.o
  AR librte_bus_ifpga.a
  AR librte_bus_vdev.a
  INSTALL-LIB librte_bus_ifpga.a
  INSTALL-LIB librte_bus_vdev.a
  CC mc/dpbp.o
  CC mc/dpio.o
  CC mc/mc_sys.o
  CC mc/dpcon.o
  CC [M]  /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/igb_uio.mod.o
  CC mc/dpci.o
  CC vmbus_channel.o
  CC mc/dpdmai.o
  CC base/qbman/bman_driver.o
  CC portal/dpaa2_hw_dpio.o
  CC base/qbman/qman.o
  CC base/qbman/qman_driver.o
  CC base/qbman/dpaa_alloc.o
  LD [M]  /root/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/igb_uio.ko
  CC pci_params.o
INSTALL-MODULE igb_uio.ko
  CC base/qbman/dpaa_sys.o
  CC vmbus_bufring.o
  CC vmbus_common_uio.o
  CC portal/dpaa2_hw_dpbp.o
  CC pci_common.o
  CC portal/dpaa2_hw_dpci.o
  CC fslmc_vfio.o
  CC fslmc_bus.o
  CC pci_common_uio.o
  AR librte_bus_vmbus.a
  INSTALL-LIB librte_bus_vmbus.a
  PMDINFO portal/dpaa2_hw_dpio.o.pmd.c
  CC portal/dpaa2_hw_dpio.o.pmd.o
  LD portal/dpaa2_hw_dpio.o
  AR librte_bus_pci.a
  INSTALL-LIB librte_bus_pci.a
  PMDINFO portal/dpaa2_hw_dpbp.o.pmd.c
  CC portal/dpaa2_hw_dpbp.o.pmd.o
  PMDINFO portal/dpaa2_hw_dpci.o.pmd.c
  CC portal/dpaa2_hw_dpci.o.pmd.o
  LD portal/dpaa2_hw_dpci.o
  LD portal/dpaa2_hw_dpbp.o
  AR librte_bus_fslmc.a
  INSTALL-LIB librte_bus_fslmc.a
  AR librte_bus_dpaa.a
  INSTALL-LIB librte_bus_dpaa.a
== Build drivers/mempool
== Build drivers/mempool/bucket
== Build drivers/mempool/dpaa2
== Build drivers/mempool/dpaa
== Build drivers/mempool/ring
== Build drivers/mempool/octeontx2
== Build drivers/mempool/stack
== Build drivers/mempool/octeontx
  CC rte_mempool_stack.o
  SYMLINK-FILE include/rte_dpaa2_mempool.h
  CC dpaa2_hw_mempool.o
  CC rte_mempool_bucket.o
  CC rte_mempool_ring.o
  CC dpaa_mempool.o
  CC otx2_mempool_ops.o
  CC otx2_mempool_irq.o
  CC otx2_mempool.o
  CC otx2_mempool_debug.o
  CC rte_mempool_octeontx.o
  CC octeontx_fpavf.o
  PMDINFO octeontx_fpavf.o.pmd.c
  CC octeontx_fpavf.o.pmd.o
  LD octeontx_fpavf.o
  AR librte_mempool_stack.a
  INSTALL-LIB librte_mempool_stack.a
  AR librte_mempool_ring.a
  AR librte_mempool_octeontx.a
  INSTALL-LIB librte_mempool_ring.a
  INSTALL-LIB librte_mempool_octeontx.a
  AR librte_mempool_dpaa2.a
  INSTALL-LIB librte_mempool_dpaa2.a
  PMDINFO otx2_mempool.o.pmd.c
  CC otx2_mempool.o.pmd.o
  LD otx2_mempool.o
  AR librte_mempool_dpaa.a
  INSTALL-LIB librte_mempool_dpaa.a
  AR librte_mempool_octeontx2.a
  INSTALL-LIB librte_mempool_octeontx2.a
  AR librte_mempool_bucket.a
  INSTALL-LIB librte_mempool_bucket.a
== Build drivers/net
== Build drivers/baseband
== Build drivers/common/qat
== Build drivers/crypto
== Build drivers/vdpa
== Build drivers/compress
== Build drivers/baseband/null
== Build drivers/baseband/fpga_5gnr_fec
== Build drivers/baseband/turbo_sw
== Build drivers/baseband/fpga_lte_fec
== Build drivers/crypto/scheduler
== Build drivers/crypto/octeontx2
== Build drivers/crypto/null
== Build drivers/crypto/octeontx
== Build drivers/crypto/dpaa2_sec
== Build drivers/crypto/dpaa_sec
== Build drivers/compress/octeontx
== Build drivers/vdpa/ifc
== Build drivers/net/af_packet
  CC qat_comp.o
  SYMLINK-FILE include/fpga_lte_fec.h
  CC bbdev_null.o
  CC fpga_lte_fec.o
  SYMLINK-FILE include/rte_pmd_fpga_5gnr_fec.h
  CC bbdev_turbo_software.o
  SYMLINK-FILE include/rte_cryptodev_scheduler_operations.h
  CC null_crypto_pmd.o
  CC otx2_cryptodev.o
  CC rte_fpga_5gnr_fec.o
  SYMLINK-FILE include/rte_cryptodev_scheduler.h
  CC otx_cryptodev.o
  CC otx_zip_pmd.o
  CC rte_eth_af_packet.o
  CC scheduler_pmd.o
  CC dpaa_sec.o
  CC ifcvf_vdpa.o
  CC dpaa2_sec_dpseci.o
  CC scheduler_pmd_ops.o
  PMDINFO otx_cryptodev.o.pmd.c
  CC otx_cryptodev.o.pmd.o
  LD otx_cryptodev.o
  PMDINFO otx2_cryptodev.o.pmd.c
  CC otx2_cryptodev.o.pmd.o
  CC otx_cryptodev_capabilities.o
  LD otx2_cryptodev.o
  CC otx2_cryptodev_capabilities.o
  CC qat_comp_pmd.o
  PMDINFO null_crypto_pmd.o.pmd.c
  CC null_crypto_pmd.o.pmd.o
  LD null_crypto_pmd.o
  CC null_crypto_pmd_ops.o
  PMDINFO ifcvf_vdpa.o.pmd.c
  CC ifcvf_vdpa.o.pmd.o
  LD ifcvf_vdpa.o
  CC rte_cryptodev_scheduler.o
  CC ifcvf.o
  CC otx_cryptodev_hw_access.o
  PMDINFO otx_zip_pmd.o.pmd.c
  CC otx_zip_pmd.o.pmd.o
  PMDINFO rte_eth_af_packet.o.pmd.c
  CC rte_eth_af_packet.o.pmd.o
  LD otx_zip_pmd.o
  LD rte_eth_af_packet.o
  CC otx2_cryptodev_hw_access.o
  PMDINFO rte_fpga_5gnr_fec.o.pmd.c
  CC rte_fpga_5gnr_fec.o.pmd.o
  CC otx_zip.o
  AR librte_pmd_af_packet.a
  INSTALL-LIB librte_pmd_af_packet.a
  LD rte_fpga_5gnr_fec.o
== Build drivers/net/ark
  PMDINFO fpga_lte_fec.o.pmd.c
  CC fpga_lte_fec.o.pmd.o
  LD fpga_lte_fec.o
  AR librte_pmd_bbdev_fpga_5gnr_fec.a
  INSTALL-LIB librte_pmd_bbdev_fpga_5gnr_fec.a
  CC otx2_cryptodev_mbox.o
  AR librte_pmd_bbdev_fpga_lte_fec.a
  INSTALL-LIB librte_pmd_bbdev_fpga_lte_fec.a
  CC otx2_cryptodev_ops.o
  AR librte_pmd_ifc.a
  INSTALL-LIB librte_pmd_ifc.a
== Build drivers/net/atlantic
  PMDINFO bbdev_null.o.pmd.c
  CC bbdev_null.o.pmd.o
  CC ark_ddm.o
  LD bbdev_null.o
  AR librte_pmd_bbdev_null.a
  CC qat_device.o
  INSTALL-LIB librte_pmd_bbdev_null.a
  CC ark_ethdev.o
  CC atl_rxtx.o
  AR librte_pmd_null_crypto.a
  INSTALL-LIB librte_pmd_null_crypto.a
  CC ark_ethdev_rx.o
  AR librte_pmd_octeontx_zip.a
  INSTALL-LIB librte_pmd_octeontx_zip.a
  CC ark_ethdev_tx.o
  CC mc/dpseci.o
  CC otx_cryptodev_mbox.o
  CC otx_cryptodev_ops.o
  CC scheduler_roundrobin.o
  CC ark_mpu.o
  CC scheduler_pkt_size_distr.o
  PMDINFO qat_device.o.pmd.c
  CC qat_device.o.pmd.o
  LD qat_device.o
  PMDINFO bbdev_turbo_software.o.pmd.c
  CC bbdev_turbo_software.o.pmd.o
  LD bbdev_turbo_software.o
  CC qat_common.o
  AR librte_pmd_bbdev_turbo_sw.a
  INSTALL-LIB librte_pmd_bbdev_turbo_sw.a
  CC qat_logs.o
  CC qat_qp.o
  CC scheduler_failover.o
  CC ark_pktchkr.o
  CC scheduler_multicore.o
  CC atl_ethdev.o
  PMDINFO ark_ethdev.o.pmd.c
  CC ark_ethdev.o.pmd.o
  LD ark_ethdev.o
  CC atl_hw_regs.o
== Build drivers/crypto/caam_jr
== Build drivers/crypto/virtio
== Build drivers/crypto/nitrox
  CC caam_jr.o
  CC caam_jr_capabilities.o
  CC caam_jr_hw.o
  AR librte_pmd_qat.a
  INSTALL-LIB librte_pmd_qat.a
  CC hw_atl_utils.o
  CC hw_atl_llh.o
  CC virtqueue.o
  CC nitrox_device.o
  CC ark_pktdir.o
  CC ark_pktgen.o
  CC ark_rqp.o
  PMDINFO atl_ethdev.o.pmd.c
  CC atl_ethdev.o.pmd.o
  LD atl_ethdev.o
  CC hw_atl_utils_fw2x.o
  CC hw_atl_b0.o
  CC ark_udm.o
  PMDINFO nitrox_device.o.pmd.c
  CC nitrox_device.o.pmd.o
  LD nitrox_device.o
  CC virtio_pci.o
  CC nitrox_hal.o
  CC nitrox_logs.o
  CC rte_pmd_atlantic.o
  CC nitrox_sym.o
  CC nitrox_sym_capabilities.o
  CC nitrox_sym_reqmgr.o
  CC virtio_rxtx.o
  AR librte_pmd_ark.a
  INSTALL-LIB librte_pmd_ark.a
  CC virtio_cryptodev.o
== Build drivers/net/avp
== Build drivers/net/axgbe
== Build drivers/net/bonding
  AR librte_pmd_atlantic.a
  SYMLINK-FILE include/rte_avp_common.h
  INSTALL-LIB librte_pmd_atlantic.a
  SYMLINK-FILE include/rte_avp_fifo.h
  CC nitrox_qp.o
  CC avp_ethdev.o
== Build drivers/net/cxgbe
  CC axgbe_ethdev.o
  SYMLINK-FILE include/rte_eth_bond.h
  SYMLINK-FILE include/rte_eth_bond_8023ad.h
  CC rte_eth_bond_api.o
  CC axgbe_dev.o
  CC rte_eth_bond_pmd.o
  CC cxgbe_ethdev.o
  AR librte_pmd_nitrox.a
  INSTALL-LIB librte_pmd_nitrox.a
  CC rte_eth_bond_args.o
  PMDINFO virtio_cryptodev.o.pmd.c
  CC virtio_cryptodev.o.pmd.o
  LD virtio_cryptodev.o
  AR librte_pmd_virtio_crypto.a
  INSTALL-LIB librte_pmd_virtio_crypto.a
  CC cxgbevf_ethdev.o
  AR librte_pmd_crypto_scheduler.a
  INSTALL-LIB librte_pmd_crypto_scheduler.a
  PMDINFO dpaa2_sec_dpseci.o.pmd.c
  CC dpaa2_sec_dpseci.o.pmd.o
  CC cxgbe_main.o
  LD dpaa2_sec_dpseci.o
  AR librte_pmd_dpaa2_sec.a
  INSTALL-LIB librte_pmd_dpaa2_sec.a
  CC rte_eth_bond_8023ad.o
  PMDINFO dpaa_sec.o.pmd.c
  CC dpaa_sec.o.pmd.o
  PMDINFO axgbe_ethdev.o.pmd.c
  CC axgbe_ethdev.o.pmd.o
  LD dpaa_sec.o
  LD axgbe_ethdev.o
  AR librte_pmd_dpaa_sec.a
  INSTALL-LIB librte_pmd_dpaa_sec.a
  CC rte_eth_bond_alb.o
  CC rte_eth_bond_flow.o
  CC cxgbevf_main.o
  CC sge.o
  CC axgbe_mdio.o
  PMDINFO cxgbevf_ethdev.o.pmd.c
  CC cxgbevf_ethdev.o.pmd.o
  LD cxgbevf_ethdev.o
  CC axgbe_phy_impl.o
  PMDINFO cxgbe_ethdev.o.pmd.c
  CC cxgbe_ethdev.o.pmd.o
  LD cxgbe_ethdev.o
  CC axgbe_i2c.o
  CC axgbe_rxtx.o
  CC caam_jr_uio.o
  PMDINFO avp_ethdev.o.pmd.c
  CC avp_ethdev.o.pmd.o
  LD avp_ethdev.o
  CC cxgbe_filter.o
  AR librte_pmd_avp.a
  INSTALL-LIB librte_pmd_avp.a
  CC cxgbe_flow.o
  PMDINFO caam_jr.o.pmd.c
  CC caam_jr.o.pmd.o
  LD caam_jr.o
  CC t4_hw.o
  CC clip_tbl.o
  CC axgbe_rxtx_vec_sse.o
  CC mps_tcam.o
  CC l2t.o
  AR librte_pmd_caam_jr.a
  INSTALL-LIB librte_pmd_caam_jr.a
  CC smt.o
== Build drivers/net/dpaa
== Build drivers/net/dpaa2
  AR librte_pmd_axgbe.a
  INSTALL-LIB librte_pmd_axgbe.a
  CC t4vf_hw.o
  SYMLINK-FILE include/rte_pmd_dpaa.h
  CC dpaa_ethdev.o
  CC dpaa_rxtx.o
== Build drivers/net/e1000
== Build drivers/net/ena
  SYMLINK-FILE include/rte_pmd_dpaa2.h
  CC base/dpaa2_hw_dpni.o
  CC dpaa2_rxtx.o
  CC dpaa2_ethdev.o
  CC dpaa2_flow.o
  PMDINFO rte_eth_bond_pmd.o.pmd.c
  CC rte_eth_bond_pmd.o.pmd.o
  CC ena_ethdev.o
  CC ena_com.o
  LD rte_eth_bond_pmd.o
  CC e1000_80003es2lan.o
  AR librte_pmd_bond.a
  INSTALL-LIB librte_pmd_bond.a
  CC e1000_82540.o
== Build drivers/net/enetc
  PMDINFO dpaa_ethdev.o.pmd.c
  CC dpaa_ethdev.o.pmd.o
  CC e1000_82541.o
== Build drivers/net/enic
  LD dpaa_ethdev.o
== Build drivers/net/failsafe
  CC enetc_ethdev.o
  CC enetc_rxtx.o
  CC enic_ethdev.o
  CC e1000_82542.o
  CC failsafe.o
  CC e1000_82543.o
  CC failsafe_args.o
  PMDINFO dpaa2_ethdev.o.pmd.c
  CC dpaa2_ethdev.o.pmd.o
  AR librte_pmd_octeontx2_crypto.a
  LD dpaa2_ethdev.o
  INSTALL-LIB librte_pmd_octeontx2_crypto.a
== Build drivers/net/fm10k
== Build drivers/net/hinic
  CC failsafe_eal.o
  AR librte_pmd_cxgbe.a
  INSTALL-LIB librte_pmd_cxgbe.a
== Build drivers/net/hns3
  CC failsafe_ops.o
  CC e1000_82571.o
  PMDINFO enetc_ethdev.o.pmd.c
  CC enetc_ethdev.o.pmd.o
  LD enetc_ethdev.o
  CC fm10k_ethdev.o
  CC hinic_pmd_api_cmd.o
  AR librte_pmd_enetc.a
  INSTALL-LIB librte_pmd_enetc.a
  CC failsafe_rxtx.o
  PMDINFO failsafe.o.pmd.c
  CC failsafe.o.pmd.o
  LD failsafe.o
  CC hns3_ethdev.o
  CC hns3_ethdev_vf.o
  CC e1000_82575.o
  CC hns3_cmd.o
  PMDINFO enic_ethdev.o.pmd.c
  CC enic_ethdev.o.pmd.o
  LD enic_ethdev.o
  CC enic_main.o
  PMDINFO ena_ethdev.o.pmd.c
  CC ena_ethdev.o.pmd.o
  LD ena_ethdev.o
  CC hns3_mbx.o
  CC ena_eth_com.o
  AR librte_pmd_dpaa.a
  CC dpaa2_mux.o
  INSTALL-LIB librte_pmd_dpaa.a
  CC hns3_rxtx.o
  CC hinic_pmd_cfg.o
  AR librte_pmd_ena.a
  INSTALL-LIB librte_pmd_ena.a
  CC hinic_pmd_cmdq.o
  CC hinic_pmd_eqs.o
  CC hinic_pmd_hwdev.o
  CC e1000_i210.o
  PMDINFO hns3_ethdev_vf.o.pmd.c
  CC hns3_ethdev_vf.o.pmd.o
  LD hns3_ethdev_vf.o
  CC e1000_api.o
  CC hinic_pmd_hwif.o
  PMDINFO dpaa2_mux.o.pmd.c
  CC dpaa2_mux.o.pmd.o
  LD dpaa2_mux.o
  CC dpaa2_sparser.o
  CC mc/dpni.o
  CC mc/dpkg.o
  CC e1000_ich8lan.o
  CC hinic_pmd_mgmt.o
  CC hinic_pmd_niccfg.o
  CC e1000_logs.o
  CC mc/dpdmux.o
  CC failsafe_ether.o
  CC e1000_mac.o
  CC e1000_manage.o
  PMDINFO fm10k_ethdev.o.pmd.c
  CC fm10k_ethdev.o.pmd.o
  LD fm10k_ethdev.o
  CC failsafe_flow.o
  CC enic_rxtx.o
  CC fm10k_rxtx.o
  CC fm10k_pf.o
  AR librte_pmd_dpaa2.a
  INSTALL-LIB librte_pmd_dpaa2.a
  CC fm10k_tlv.o
  CC fm10k_common.o
  AR librte_pmd_octeontx_crypto.a
  INSTALL-LIB librte_pmd_octeontx_crypto.a
  CC e1000_mbx.o
  CC fm10k_mbx.o
  PMDINFO hns3_ethdev.o.pmd.c
  CC hns3_ethdev.o.pmd.o
  LD hns3_ethdev.o
  CC hinic_pmd_nicio.o
  CC hinic_pmd_wq.o
  CC hinic_pmd_mbox.o
  CC hns3_rss.o
  CC hns3_flow.o
  CC e1000_nvm.o
  CC hns3_fdir.o
  CC hns3_intr.o
  CC failsafe_intr.o
  CC hns3_stats.o
  CC hns3_regs.o
  CC e1000_osdep.o
  CC fm10k_vf.o
  CC fm10k_api.o
  CC e1000_phy.o
  CC e1000_vf.o
  CC igb_ethdev.o
  CC igb_rxtx.o
  CC hinic_pmd_flow.o
  CC hinic_pmd_ethdev.o
  CC enic_clsf.o
  CC fm10k_rxtx_vec.o
  CC hinic_pmd_rx.o
  CC igb_pf.o
  AR librte_pmd_failsafe.a
  INSTALL-LIB librte_pmd_failsafe.a
  CC hns3_dcb.o
== Build drivers/net/i40e
== Build drivers/net/iavf
== Build drivers/net/ice
  CC igb_flow.o
  CC iavf_ethdev.o
  SYMLINK-FILE include/rte_pmd_i40e.h
  CC i40e_adminq.o
  SYMLINK-FILE include/rte_pmd_ice.h
  CC ice_controlq.o
  CC ice_common.o
  CC enic_res.o
  CC ice_sched.o
  CC ice_switch.o
  CC ice_nvm.o
  CC enic_flow.o
  PMDINFO hinic_pmd_ethdev.o.pmd.c
  CC hinic_pmd_ethdev.o.pmd.o
  CC hns3_mp.o
  LD hinic_pmd_ethdev.o
  CC hinic_pmd_tx.o
  AR librte_pmd_fm10k.a
  INSTALL-LIB librte_pmd_fm10k.a
  CC enic_fm_flow.o
  CC i40e_common.o
  CC i40e_diag.o
  PMDINFO iavf_ethdev.o.pmd.c
  CC iavf_ethdev.o.pmd.o
  LD iavf_ethdev.o
  CC iavf_vchnl.o
  CC iavf_rxtx.o
  CC iavf_generic_flow.o
  AR librte_pmd_hns3.a
  INSTALL-LIB librte_pmd_hns3.a
  CC iavf_fdir.o
  CC iavf_hash.o
  CC em_ethdev.o
  PMDINFO igb_ethdev.o.pmd.c
  CC igb_ethdev.o.pmd.o
  CC em_rxtx.o
  LD igb_ethdev.o
  CC i40e_hmc.o
  CC i40e_lan_hmc.o
  CC i40e_nvm.o
  CC base/vnic_cq.o
  CC base/vnic_wq.o
  CC base/vnic_dev.o
  AR librte_pmd_hinic.a
  INSTALL-LIB librte_pmd_hinic.a
  CC base/vnic_intr.o
  CC base/vnic_rq.o
  CC enic_rxtx_vec_avx2.o
  CC iavf_rxtx_vec_sse.o
  CC iavf_rxtx_vec_avx2.o
  PMDINFO em_ethdev.o.pmd.c
  CC em_ethdev.o.pmd.o
  LD em_ethdev.o
  CC ice_flex_pipe.o
  CC ice_flow.o
  CC ice_dcb.o
  CC ice_fdir.o
  CC ice_acl.o
  CC ice_acl_ctrl.o
  CC i40e_dcb.o
  AR librte_pmd_e1000.a
  INSTALL-LIB librte_pmd_e1000.a
  CC i40e_ethdev.o
  CC i40e_rxtx.o
  CC ice_ethdev.o
  AR librte_pmd_enic.a
  INSTALL-LIB librte_pmd_enic.a
  CC ice_rxtx.o
  CC i40e_rxtx_vec_sse.o
  CC i40e_ethdev_vf.o
  CC i40e_pf.o
  CC i40e_fdir.o
== Build drivers/net/igc
== Build drivers/net/ionic
== Build drivers/net/ixgbe
  CC igc_api.o
  CC ionic_mac_api.o
  AR librte_pmd_iavf.a
  INSTALL-LIB librte_pmd_iavf.a
  CC ionic_rx_filter.o
== Build drivers/net/liquidio
  SYMLINK-FILE include/rte_pmd_ixgbe.h
  CC ixgbe_common.o
  CC lio_ethdev.o
  CC lio_rxtx.o
  CC lio_23xx_vf.o
  CC igc_base.o
  CC igc_i225.o
  CC i40e_flow.o
  CC ionic_rxtx.o
  PMDINFO i40e_ethdev_vf.o.pmd.c
  CC i40e_ethdev_vf.o.pmd.o
  LD i40e_ethdev_vf.o
  CC igc_mac.o
  CC rte_pmd_i40e.o
  CC i40e_tm.o
  CC i40e_vf_representor.o
  CC igc_manage.o
  PMDINFO ice_ethdev.o.pmd.c
  CC ice_ethdev.o.pmd.o
  CC i40e_rxtx_vec_avx2.o
  LD ice_ethdev.o
  CC lio_mbox.o
  PMDINFO lio_ethdev.o.pmd.c
  CC lio_ethdev.o.pmd.o
  LD lio_ethdev.o
  CC ionic_dev.o
  CC ice_rxtx_vec_sse.o
  CC ixgbe_82598.o
  CC igc_nvm.o
  CC igc_osdep.o
  CC ice_switch_filter.o
  CC ice_fdir_filter.o
  CC ixgbe_82599.o
  CC ixgbe_x540.o
  CC igc_phy.o
  CC igc_logs.o
  CC ixgbe_x550.o
  AR librte_pmd_lio.a
  INSTALL-LIB librte_pmd_lio.a
  CC ixgbe_phy.o
  CC ixgbe_api.o
  CC ixgbe_vf.o
  CC ionic_ethdev.o
  CC ixgbe_hv_vf.o
  CC ionic_lif.o
  CC ionic_main.o
== Build drivers/net/memif
== Build drivers/net/netvsc
  CC ixgbe_dcb.o
  CC igc_ethdev.o
  CC rte_eth_memif.o
  CC hn_ethdev.o
  CC hn_rxtx.o
  CC hn_rndis.o
  CC ice_hash.o
  PMDINFO ionic_ethdev.o.pmd.c
  CC ionic_ethdev.o.pmd.o
  LD ionic_ethdev.o
  CC hn_nvs.o
  CC ice_rxtx_vec_avx2.o
  CC hn_vf.o
  CC ice_generic_flow.o
  CC ixgbe_dcb_82599.o
  CC ice_dcf.o
  AR librte_pmd_ionic.a
  INSTALL-LIB librte_pmd_ionic.a
  CC ixgbe_dcb_82598.o
  PMDINFO hn_ethdev.o.pmd.c
  CC hn_ethdev.o.pmd.o
  LD hn_ethdev.o
  CC ixgbe_mbx.o
== Build drivers/net/nfp
== Build drivers/net/bnxt
  CC ixgbe_rxtx.o
  CC ixgbe_ethdev.o
  PMDINFO igc_ethdev.o.pmd.c
  CC igc_ethdev.o.pmd.o
  CC igc_txrx.o
  LD igc_ethdev.o
  CC igc_filter.o
  CC ixgbe_fdir.o
  CC nfp_cppcore.o
  SYMLINK-FILE include/rte_pmd_bnxt.h
  CC bnxt_cpr.o
  CC nfp_cpp_pcie_ops.o
  CC nfp_mutex.o
  CC nfp_resource.o
  CC bnxt_ethdev.o
  AR librte_pmd_netvsc.a
  INSTALL-LIB librte_pmd_netvsc.a
  CC bnxt_filter.o
  CC bnxt_flow.o
  PMDINFO rte_eth_memif.o.pmd.c
  PMDINFO i40e_ethdev.o.pmd.c
  CC rte_eth_memif.o.pmd.o
  CC i40e_ethdev.o.pmd.o
  LD rte_eth_memif.o
  LD i40e_ethdev.o
  CC memif_socket.o
  AR librte_pmd_i40e.a
  INSTALL-LIB librte_pmd_i40e.a
  CC bnxt_hwrm.o
  CC bnxt_ring.o
  CC ice_dcf_ethdev.o
== Build drivers/net/null
== Build drivers/net/octeontx
  CC ixgbe_pf.o
  CC rte_eth_null.o
  CC nfp_crc.o
  CC octeontx_rxtx.o
  CC nfp_mip.o
  CC octeontx_pkovf.o
  PMDINFO octeontx_pkovf.o.pmd.c
  CC octeontx_pkovf.o.pmd.o
  LD octeontx_pkovf.o
  CC bnxt_rxq.o
  AR librte_pmd_memif.a
  INSTALL-LIB librte_pmd_memif.a
  CC bnxt_rxr.o
  PMDINFO ice_dcf_ethdev.o.pmd.c
  CC ice_dcf_ethdev.o.pmd.o
  LD ice_dcf_ethdev.o
  CC ice_dcf_parent.o
  CC octeontx_pkivf.o
  PMDINFO octeontx_pkivf.o.pmd.c
  CC octeontx_pkivf.o.pmd.o
  LD octeontx_pkivf.o
  CC nfp_nffw.o
  CC nfp_hwinfo.o
  CC igc_flow.o
  CC nfp_rtsym.o
  CC nfp_nsp.o
  PMDINFO rte_eth_null.o.pmd.c
  CC rte_eth_null.o.pmd.o
  AR librte_pmd_ice.a
  LD rte_eth_null.o
  INSTALL-LIB librte_pmd_ice.a
  CC bnxt_stats.o
  AR librte_pmd_null.a
  INSTALL-LIB librte_pmd_null.a
  CC bnxt_txq.o
  CC bnxt_txr.o
  CC bnxt_vnic.o
  CC bnxt_irq.o
  CC octeontx_bgx.o
  CC octeontx_ethdev.o
  CC bnxt_util.o
  CC octeontx_ethdev_ops.o
  AR librte_pmd_igc.a
  INSTALL-LIB librte_pmd_igc.a
  CC ixgbe_flow.o
  CC nfp_nsp_cmds.o
  PMDINFO bnxt_ethdev.o.pmd.c
  CC bnxt_ethdev.o.pmd.o
  LD bnxt_ethdev.o
  CC nfp_nsp_eth.o
  CC nfp_net.o
  CC ixgbe_rxtx_vec_sse.o
  CC ixgbe_ipsec.o
  CC rte_pmd_ixgbe.o
  CC ixgbe_tm.o
  CC ixgbe_vf_representor.o
  PMDINFO octeontx_ethdev.o.pmd.c
  CC octeontx_ethdev.o.pmd.o
  LD octeontx_ethdev.o
  AR librte_pmd_octeontx.a
  INSTALL-LIB librte_pmd_octeontx.a
  CC rte_pmd_bnxt.o
  PMDINFO ixgbe_ethdev.o.pmd.c
  CC ixgbe_ethdev.o.pmd.o
  LD ixgbe_ethdev.o
  CC bnxt_rxtx_vec_sse.o
  CC tf_core/tf_core.o
  CC tf_core/bitalloc.o
== Build drivers/net/octeontx2
== Build drivers/net/qede
== Build drivers/net/ring
  CC otx2_rx.o
  CC otx2_tx.o
  SYMLINK-FILE include/rte_eth_ring.h
  CC rte_eth_ring.o
  CC otx2_tm.o
  CC ecore_dev.o
  CC ecore_hw.o
  CC ecore_cxt.o
  CC ecore_l2.o
  CC tf_core/tf_msg.o
  CC otx2_rss.o
  CC ecore_sp_commands.o
  AR librte_pmd_ixgbe.a
  INSTALL-LIB librte_pmd_ixgbe.a
  CC ecore_init_fw_funcs.o
  CC ecore_spq.o
  CC tf_core/rand.o
  CC tf_core/stack.o
  CC otx2_mac.o
  CC tf_core/tf_em.o
  PMDINFO nfp_net.o.pmd.c
  CC nfp_net.o.pmd.o
  LD nfp_net.o
  CC tf_core/tf_rm.o
  AR librte_pmd_nfp.a
  INSTALL-LIB librte_pmd_nfp.a
  CC tf_core/tf_tbl.o
  CC tf_core/tfp.o
  PMDINFO rte_eth_ring.o.pmd.c
  CC rte_eth_ring.o.pmd.o
  CC tf_ulp/bnxt_ulp.o
  LD rte_eth_ring.o
  AR librte_pmd_ring.a
  INSTALL-LIB librte_pmd_ring.a
  CC tf_ulp/ulp_mark_mgr.o
  CC tf_ulp/ulp_flow_db.o
  CC tf_ulp/ulp_template_db.o
  CC otx2_ptp.o
  CC tf_ulp/ulp_utils.o
  CC ecore_init_ops.o
  CC ecore_mcp.o
  CC ecore_int.o
  CC tf_ulp/ulp_mapper.o
  CC ecore_dcbx.o
  CC bcm_osal.o
  CC ecore_sriov.o
  CC otx2_flow.o
  CC tf_ulp/ulp_matcher.o
  CC tf_ulp/ulp_rte_parser.o
  CC ecore_vf.o
  CC tf_ulp/bnxt_ulp_flow.o
  CC qede_ethdev.o
  CC qede_main.o
  CC qede_rxtx.o
  CC tf_ulp/ulp_port_db.o
  CC qede_filter.o
== Build drivers/net/sfc
== Build drivers/net/tap
== Build drivers/net/thunderx
== Build drivers/net/vdev_netvsc
  CC sfc_ethdev.o
  CC nicvf_rxtx.o
  CC sfc_kvargs.o
  AR librte_pmd_bnxt.a
  INSTALL-LIB librte_pmd_bnxt.a
  CC sfc.o
  CC vdev_netvsc.o
  CC rte_eth_tap.o
  CC sfc_mcdi.o
  CC tap_flow.o
== Build drivers/net/virtio
== Build drivers/net/vmxnet3
  PMDINFO qede_ethdev.o.pmd.c
  CC qede_ethdev.o.pmd.o
  LD qede_ethdev.o
  CC sfc_intr.o
  CC otx2_link.o
  CC virtqueue.o
  CC vmxnet3_rxtx.o
  PMDINFO vdev_netvsc.o.pmd.c
  CC vdev_netvsc.o.pmd.o
  CC vmxnet3_ethdev.o
  LD vdev_netvsc.o
  AR librte_pmd_vdev_netvsc.a
  INSTALL-LIB librte_pmd_vdev_netvsc.a
  CC sfc_ev.o
  PMDINFO sfc_ethdev.o.pmd.c
  CC sfc_ethdev.o.pmd.o
  LD sfc_ethdev.o
  CC sfc_port.o
== Build drivers/net/kni
  CC nicvf_hw.o
  CC rte_eth_kni.o
  CC nicvf_mbox.o
  CC nicvf_ethdev.o
  CC tap_netlink.o
  CC otx2_vlan.o
  CC virtio_pci.o
  AR librte_pmd_qede.a
  INSTALL-LIB librte_pmd_qede.a
  CC virtio_rxtx.o
  CC virtio_ethdev.o
  CC virtio_rxtx_simple.o
  CC sfc_rx.o
  CC virtio_rxtx_simple_sse.o
  PMDINFO vmxnet3_ethdev.o.pmd.c
  CC vmxnet3_ethdev.o.pmd.o
  LD vmxnet3_ethdev.o
  CC virtio_user/vhost_user.o
  PMDINFO rte_eth_kni.o.pmd.c
  CC rte_eth_kni.o.pmd.o
  LD rte_eth_kni.o
  AR librte_pmd_kni.a
  INSTALL-LIB librte_pmd_kni.a
  CC nicvf_bsvf.o
== Build drivers/net/softnic
== Build drivers/net/vhost
  PMDINFO rte_eth_tap.o.pmd.c
  CC rte_eth_tap.o.pmd.o
  LD rte_eth_tap.o
  PMDINFO nicvf_ethdev.o.pmd.c
  CC nicvf_ethdev.o.pmd.o
  LD nicvf_ethdev.o
  CC virtio_user/vhost_kernel.o
  CC tap_tcmsgs.o
  CC nicvf_svf.o
  CC tap_bpf_api.o
  CC sfc_tx.o
  AR librte_pmd_vmxnet3_uio.a
  AR librte_pmd_thunderx_nicvf.a
  INSTALL-LIB librte_pmd_vmxnet3_uio.a
  INSTALL-LIB librte_pmd_thunderx_nicvf.a
  CC sfc_tso.o
  CC sfc_filter.o
  SYMLINK-FILE include/rte_eth_vhost.h
  SYMLINK-FILE include/rte_eth_softnic.h
  CC rte_eth_vhost.o
  CC rte_eth_softnic.o
  CC rte_eth_softnic_mempool.o
  CC otx2_stats.o
  CC otx2_mcast.o
  CC otx2_lookup.o
  CC tap_intr.o
  CC otx2_ethdev.o
  CC otx2_flow_ctrl.o
  CC otx2_flow_parse.o
  PMDINFO rte_eth_softnic.o.pmd.c
  CC rte_eth_softnic.o.pmd.o
  LD rte_eth_softnic.o
  CC rte_eth_softnic_swq.o
  CC sfc_flow.o
  PMDINFO virtio_ethdev.o.pmd.c
  CC virtio_ethdev.o.pmd.o
  LD virtio_ethdev.o
  CC sfc_dp.o
  AR librte_pmd_tap.a
  INSTALL-LIB librte_pmd_tap.a
  CC virtio_user/vhost_kernel_tap.o
  CC rte_eth_softnic_link.o
  CC rte_eth_softnic_tm.o
  CC rte_eth_softnic_tap.o
  CC sfc_ef10_rx.o
  CC sfc_ef10_essb_rx.o
  CC sfc_ef10_tx.o
  PMDINFO rte_eth_vhost.o.pmd.c
  CC rte_eth_vhost.o.pmd.o
  LD rte_eth_vhost.o
  AR librte_pmd_vhost.a
  INSTALL-LIB librte_pmd_vhost.a
  CC efx_bootcfg.o
  CC efx_crc32.o
  CC efx_ev.o
  CC efx_evb.o
  CC efx_filter.o
  CC rte_eth_softnic_action.o
  CC rte_eth_softnic_pipeline.o
  CC virtio_user/virtio_user_dev.o
  PMDINFO otx2_ethdev.o.pmd.c
  CC otx2_ethdev.o.pmd.o
  LD otx2_ethdev.o
  CC virtio_user_ethdev.o
  CC efx_hash.o
  CC rte_eth_softnic_thread.o
  CC rte_eth_softnic_cli.o
  CC rte_eth_softnic_flow.o
  CC rte_eth_softnic_meter.o
  CC efx_intr.o
  CC rte_eth_softnic_cryptodev.o
  CC efx_lic.o
  PMDINFO virtio_user_ethdev.o.pmd.c
  CC virtio_user_ethdev.o.pmd.o
  LD virtio_user_ethdev.o
  CC efx_mac.o
  CC efx_mcdi.o
  CC efx_mon.o
  CC efx_nic.o
  CC otx2_flow_utils.o
  AR librte_pmd_virtio.a
  INSTALL-LIB librte_pmd_virtio.a
  CC otx2_ethdev_irq.o
  CC parser.o
  CC conn.o
  CC efx_nvram.o
  CC efx_phy.o
  CC efx_port.o
  CC efx_proxy.o
  CC otx2_ethdev_ops.o
  CC otx2_ethdev_sec.o
  CC otx2_ethdev_debug.o
  CC otx2_ethdev_devargs.o
  CC efx_rx.o
  CC efx_sram.o
  CC efx_tunnel.o
  CC efx_tx.o
  CC efx_vpd.o
  CC mcdi_mon.o
  CC siena_mac.o
  CC siena_mcdi.o
  CC siena_nic.o
  CC siena_nvram.o
  CC siena_phy.o
  CC siena_sram.o
  CC siena_vpd.o
  CC ef10_ev.o
  CC ef10_evb.o
  CC ef10_filter.o
  CC ef10_intr.o
  CC ef10_image.o
  CC ef10_mac.o
  CC ef10_mcdi.o
  AR librte_pmd_octeontx2.a
  CC ef10_nic.o
  INSTALL-LIB librte_pmd_octeontx2.a
  CC ef10_nvram.o
  CC ef10_phy.o
  CC ef10_proxy.o
  CC ef10_rx.o
  CC ef10_tx.o
  CC ef10_vpd.o
  AR librte_pmd_softnic.a
  INSTALL-LIB librte_pmd_softnic.a
  CC hunt_nic.o
  CC medford_nic.o
  CC medford2_nic.o
  AR librte_pmd_sfc_efx.a
  INSTALL-LIB librte_pmd_sfc_efx.a
== Build drivers/event
== Build drivers/event/sw
== Build drivers/event/dsw
== Build drivers/event/skeleton
== Build drivers/event/octeontx
== Build drivers/event/dpaa
== Build drivers/event/octeontx2
== Build drivers/event/dpaa2
== Build drivers/event/opdl
  CC dpaa2_hw_dpcon.o
  CC dpaa2_eventdev.o
  CC dpaa2_eventdev_selftest.o
  CC dsw_evdev.o
  CC dsw_event.o
  CC dsw_xstats.o
  CC dpaa_eventdev.o
  CC skeleton_eventdev.o
  CC opdl_ring.o
  CC opdl_evdev.o
  CC otx2_worker_dual.o
  CC opdl_evdev_init.o
  CC sw_evdev.o
  CC ssovf_worker.o
  PMDINFO skeleton_eventdev.o.pmd.c
  CC skeleton_eventdev.o.pmd.o
  LD skeleton_eventdev.o
  AR librte_pmd_skeleton_event.a
  INSTALL-LIB librte_pmd_skeleton_event.a
  CC sw_evdev_worker.o
  CC sw_evdev_scheduler.o
  PMDINFO opdl_evdev.o.pmd.c
  CC opdl_evdev.o.pmd.o
  LD opdl_evdev.o
  CC sw_evdev_xstats.o
  PMDINFO dpaa2_hw_dpcon.o.pmd.c
  CC dpaa2_hw_dpcon.o.pmd.o
  LD dpaa2_hw_dpcon.o
  PMDINFO sw_evdev.o.pmd.c
  CC sw_evdev.o.pmd.o
  CC sw_evdev_selftest.o
  CC opdl_evdev_xstats.o
  PMDINFO dsw_evdev.o.pmd.c
  CC dsw_evdev.o.pmd.o
  LD sw_evdev.o
  LD dsw_evdev.o
  CC opdl_test.o
  CC ssovf_evdev.o
  PMDINFO dpaa2_eventdev.o.pmd.c
  CC dpaa2_eventdev.o.pmd.o
  LD dpaa2_eventdev.o
  CC ssovf_evdev_selftest.o
  AR librte_pmd_dpaa2_event.a
  INSTALL-LIB librte_pmd_dpaa2_event.a
  CC ssovf_probe.o
  CC timvf_worker.o
  CC timvf_evdev.o
  PMDINFO dpaa_eventdev.o.pmd.c
  CC dpaa_eventdev.o.pmd.o
  LD dpaa_eventdev.o
  AR librte_pmd_dpaa_event.a
  INSTALL-LIB librte_pmd_dpaa_event.a
  CC timvf_probe.o
  CC otx2_worker.o
  PMDINFO ssovf_probe.o.pmd.c
  CC ssovf_probe.o.pmd.o
  PMDINFO ssovf_evdev.o.pmd.c
  CC ssovf_evdev.o.pmd.o
  LD ssovf_probe.o
  LD ssovf_evdev.o
  CC otx2_tim_worker.o
  CC otx2_evdev.o
  CC otx2_evdev_adptr.o
  PMDINFO timvf_probe.o.pmd.c
  CC timvf_probe.o.pmd.o
  LD timvf_probe.o
  CC otx2_tim_evdev.o
  CC otx2_evdev_selftest.o
  CC otx2_evdev_irq.o
  AR librte_pmd_octeontx_ssovf.a
  INSTALL-LIB librte_pmd_octeontx_ssovf.a
  AR librte_pmd_dsw_event.a
  INSTALL-LIB librte_pmd_dsw_event.a
  AR librte_pmd_opdl_event.a
  INSTALL-LIB librte_pmd_opdl_event.a
  AR librte_pmd_sw_event.a
  INSTALL-LIB librte_pmd_sw_event.a
  PMDINFO otx2_evdev.o.pmd.c
  CC otx2_evdev.o.pmd.o
  LD otx2_evdev.o
  AR librte_pmd_octeontx2_event.a
  INSTALL-LIB librte_pmd_octeontx2_event.a
== Build drivers/raw
== Build drivers/raw/dpaa2_cmdif
== Build drivers/raw/skeleton
== Build drivers/raw/dpaa2_qdma
== Build drivers/raw/ioat
== Build drivers/raw/ntb
== Build drivers/raw/octeontx2_dma
== Build drivers/raw/octeontx2_ep
  SYMLINK-FILE include/rte_pmd_dpaa2_cmdif.h
  SYMLINK-FILE include/rte_pmd_dpaa2_qdma.h
  CC dpaa2_cmdif.o
  SYMLINK-FILE include/rte_pmd_ntb.h
  CC dpaa2_qdma.o
  CC ntb.o
  CC ntb_hw_intel.o
  CC otx2_dpi_rawdev.o
  CC otx2_dpi_msg.o
  CC otx2_dpi_test.o
  CC otx2_ep_rawdev.o
  CC otx2_ep_enqdeq.o
  CC otx2_ep_test.o
  CC otx2_ep_vf.o
  CC skeleton_rawdev.o
  CC skeleton_rawdev_test.o
  SYMLINK-FILE include/rte_ioat_rawdev.h
  SYMLINK-FILE include/rte_ioat_spec.h
  CC ioat_rawdev.o
  PMDINFO dpaa2_cmdif.o.pmd.c
  CC dpaa2_cmdif.o.pmd.o
  CC ioat_rawdev_test.o
  LD dpaa2_cmdif.o
  AR librte_rawdev_dpaa2_cmdif.a
  INSTALL-LIB librte_rawdev_dpaa2_cmdif.a
  PMDINFO otx2_ep_rawdev.o.pmd.c
  CC otx2_ep_rawdev.o.pmd.o
  PMDINFO ioat_rawdev.o.pmd.c
  CC ioat_rawdev.o.pmd.o
  LD otx2_ep_rawdev.o
  LD ioat_rawdev.o
  PMDINFO skeleton_rawdev.o.pmd.c
  CC skeleton_rawdev.o.pmd.o
  LD skeleton_rawdev.o
  AR librte_rawdev_skeleton.a
  INSTALL-LIB librte_rawdev_skeleton.a
  PMDINFO otx2_dpi_rawdev.o.pmd.c
  CC otx2_dpi_rawdev.o.pmd.o
  AR librte_rawdev_octeontx2_ep.a
  LD otx2_dpi_rawdev.o
  INSTALL-LIB librte_rawdev_octeontx2_ep.a
  AR librte_rawdev_octeontx2_dma.a
  INSTALL-LIB librte_rawdev_octeontx2_dma.a
  AR librte_rawdev_ioat.a
  INSTALL-LIB librte_rawdev_ioat.a
  PMDINFO dpaa2_qdma.o.pmd.c
  CC dpaa2_qdma.o.pmd.o
  LD dpaa2_qdma.o
  AR librte_rawdev_dpaa2_qdma.a
  INSTALL-LIB librte_rawdev_dpaa2_qdma.a
  PMDINFO ntb.o.pmd.c
  CC ntb.o.pmd.o
  LD ntb.o
  AR librte_rawdev_ntb.a
  INSTALL-LIB librte_rawdev_ntb.a
== Build app
== Build app/test-pmd
== Build app/test
== Build app/pdump
== Build app/proc-info
== Build app/test-fib
== Build app/test-sad
== Build app/test-acl
== Build app/test-cmdline
== Build app/test-pipeline
== Build app/test-bbdev
== Build app/test-compress-perf
== Build app/test-eventdev
== Build app/test-crypto-perf
  CC main.o
  CC main.o
  CC main.o
  CC main.o
  CC main.o
  CC main.o
  CC main.o
  CC config.o
  CC cmdline_test.o
  CC main.o
  CC main.o
  CC testpmd.o
  CC evt_main.o
  CC commands.o
  LD cmdline_test
  CC commands.o
  CC test_bbdev.o
  LD testsad
  LD testacl
  CC test_bbdev_perf.o
  CC init.o
  LD dpdk-procinfo
  CC test.o
  CC evt_options.o
  CC comp_perf_options_parse.o
  CC cperf_ops.o
  LD dpdk-pdump
  CC resource.o
  CC test_resource.o
  CC test_prefetch.o
  CC test_byteorder.o
  INSTALL-APP cmdline_test
  CC runtime.o
  INSTALL-MAP cmdline_test.map
  CC pipeline_stub.o
  CC test_per_lcore.o
  CC test_atomic.o
  CC evt_test.o
  INSTALL-APP testsad
  INSTALL-MAP testsad.map
  CC parser.o
  LD testfib
  CC test_order_common.o
  CC test_barrier.o
  CC cperf_options_parsing.o
  CC comp_perf_test_verify.o
  INSTALL-APP dpdk-procinfo
  INSTALL-APP testacl
  INSTALL-MAP dpdk-procinfo.map
  INSTALL-MAP testacl.map
  CC pipeline_hash.o
  CC comp_perf_test_throughput.o
  CC comp_perf_test_cyclecount.o
  CC comp_perf_test_common.o
  CC pipeline_lpm.o
  INSTALL-APP dpdk-pdump
  INSTALL-MAP dpdk-pdump.map
  CC pipeline_lpm_ipv6.o
  CC test_malloc.o
  CC test_order_queue.o
  CC test_cycles.o
  CC test_order_atq.o
  CC test_perf_common.o
  INSTALL-APP testfib
  INSTALL-MAP testfib.map
  CC pipeline_acl.o
  CC test_mcslock.o
  CC test_spinlock.o
  CC cperf_test_vectors.o
  CC cperf_test_throughput.o
  CC test_ticketlock.o
  CC cperf_test_latency.o
  CC cperf_test_pmd_cyclecount.o
  CC test_memory.o
  CC cperf_test_verify.o
  CC test_memzone.o
  CC test_bitmap.o
  CC test_reciprocal_division.o
  LD testpipeline
  LD dpdk-test-compress-perf
  CC test_reciprocal_division_perf.o
  CC cperf_test_vector_parsing.o
  CC cperf_test_common.o
  CC test_perf_queue.o
  CC parameters.o
  CC test_perf_atq.o
  CC test_fbarray.o
  CC test_pipeline_common.o
  CC test_external_mem.o
  CC test_rand_perf.o
  CC test_ring.o
  CC test_ring_mpmc_stress.o
  CC cmdline.o
  CC cmdline_flow.o
  LD dpdk-test-crypto-perf
  CC cmdline_mtr.o
  CC test_bbdev_vector.o
  INSTALL-APP dpdk-test-compress-perf
  INSTALL-MAP dpdk-test-compress-perf.map
  CC test_ring_hts_stress.o
  INSTALL-APP testpipeline
  INSTALL-MAP testpipeline.map
  CC test_ring_perf.o
  CC test_ring_peek_stress.o
  CC test_ring_rts_stress.o
  CC test_pipeline_queue.o
  CC test_ring_stress.o
  CC test_pmd_perf.o
  CC test_pipeline_atq.o
  CC cmdline_tm.o
  INSTALL-APP dpdk-test-crypto-perf
  INSTALL-MAP dpdk-test-crypto-perf.map
  CC config.o
  CC iofwd.o
  CC macfwd.o
  CC macswap.o
  CC flowgen.o
  CC rxonly.o
  LD dpdk-test-eventdev
  CC txonly.o
  CC csumonly.o
  CC test_table.o
  CC test_table_pipeline.o
  CC test_table_tables.o
  CC test_table_ports.o
  CC test_table_combined.o
  CC icmpecho.o
  CC noisy_vnf.o
  INSTALL-APP dpdk-test-eventdev
  INSTALL-MAP dpdk-test-eventdev.map
  CC bpf_cmd.o
  CC test_table_acl.o
  CC util.o
  CC softnicfwd.o
  CC test_flow_classify.o
  CC test_rwlock.o
  CC test_stack.o
  LD testbbdev
  CC test_stack_perf.o
  CC test_timer.o
  CC test_timer_perf.o
  CC test_timer_racecond.o
  CC test_timer_secondary.o
  CC test_mempool.o
  CC test_mempool_perf.o
  CC test_mbuf.o
  CC test_logs.o
  CC test_memcpy.o
  CC test_memcpy_perf.o
  CC test_member.o
  CC test_member_perf.o
  CC test_efd.o
  INSTALL-APP testbbdev
  INSTALL-MAP testbbdev.map
  CC test_efd_perf.o
  CC test_hash.o
  CC test_thash.o
  CC test_hash_perf.o
  CC test_hash_functions.o
  CC test_hash_multiwriter.o
  CC test_hash_readwrite.o
  LD testpmd
  CC test_hash_readwrite_lf_perf.o
  CC test_rib.o
  CC test_rib6.o
  CC test_fib.o
  CC test_fib6.o
  CC test_fib_perf.o
  CC test_fib6_perf.o
  CC test_lpm.o
  CC test_lpm_perf.o
  CC test_lpm6.o
  CC test_lpm6_perf.o
  CC test_debug.o
  CC test_errno.o
  CC test_tailq.o
  INSTALL-APP testpmd
  INSTALL-MAP testpmd.map
  CC test_string_fns.o
  CC test_cpuflags.o
  CC test_mp_secondary.o
  CC test_eal_flags.o
  CC test_eal_fs.o
  CC test_alarm.o
  CC test_interrupts.o
  CC test_version.o
  CC test_func_reentrancy.o
  CC test_trace.o
  CC test_trace_register.o
  CC test_trace_perf.o
  CC test_service_cores.o
  CC sample_packet_forward.o
  CC test_bitratestats.o
  CC test_latencystats.o
  CC test_pdump.o
  CC test_cmdline.o
  CC test_cmdline_num.o
  CC test_cmdline_etheraddr.o
  CC test_cmdline_portlist.o
  CC test_cmdline_ipaddr.o
  CC test_cmdline_cirbuf.o
  CC test_cmdline_string.o
  CC test_cmdline_lib.o
  CC test_crc.o
  CC test_red.o
  CC test_sched.o
  CC test_meter.o
  CC test_kni.o
  CC test_power.o
  CC test_power_cpufreq.o
  CC test_power_kvm_vm.o
  CC test_common.o
  CC test_distributor.o
  CC test_distributor_perf.o
  CC test_reorder.o
  CC virtual_pmd.o
  CC packet_burst_generator.o
  CC test_acl.o
  CC test_link_bonding.o
  CC test_link_bonding_mode4.o
  CC test_link_bonding_rssconf.o
  CC test_pmd_ring.o
  CC test_pmd_ring_perf.o
  CC test_cryptodev_blockcipher.o
  CC test_cryptodev.o
  CC test_cryptodev_asym.o
  CC test_cryptodev_security_pdcp.o
  CC test_metrics.o
  CC test_eventdev.o
  CC test_event_ring.o
  CC test_event_eth_rx_adapter.o
  CC test_event_eth_tx_adapter.o
  CC test_event_timer_adapter.o
  CC test_event_crypto_adapter.o
  CC test_graph.o
  CC test_graph_perf.o
  CC test_rawdev.o
  CC test_kvargs.o
  CC test_bpf.o
  CC test_rcu_qsbr.o
  CC test_rcu_qsbr_perf.o
  CC test_security.o
  CC test_ipsec.o
  CC test_ipsec_perf.o
  CC test_ipsec_sad.o
  MKRES test_resource_c.res.o
  LD test
  INSTALL-APP test
  INSTALL-MAP test.map
Build complete [x86_64-native-linuxapp-gcc]
Installation cannot run with T defined and DESTDIR undefined
12/05/2020 13:44:17             dut.10.240.183.202: make -j 14 app/test_sub O=x86_64-native-linuxapp-gcc
12/05/2020 13:44:19             dut.10.240.183.202: app/test_sub
== Build app/test
  LD test
  INSTALL-APP test
  INSTALL-MAP test.map
12/05/2020 13:44:19             dut.10.240.183.202: mv -f ./x86_64-native-linuxapp-gcc/app/test ./app/test/test
12/05/2020 13:44:19             dut.10.240.183.202: 
12/05/2020 13:44:19           TestUnitTestsPmdPerf: Test Case test_pmd_burst Begin
12/05/2020 13:44:19             dut.10.240.183.202: 
12/05/2020 13:44:20                         tester: 
12/05/2020 13:44:20             dut.10.240.183.202: ./app/test/test -l 1,2,3,4 -n 4 -w 0000:03:00.0 -w 0000:03:00.1  --file-prefix=dpdk_27008_20200512133142  
12/05/2020 13:44:22             dut.10.240.183.202: EAL: Detected 16 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/dpdk_27008_20200512133142/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: 1024 hugepages of size 2097152 reserved, but no mounted hugetlbfs found for that size
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.0 (socket 0)
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.1 (socket 0)
No telemetry legacy support - No legacy callbacks, legacy socket not created
APP: HPET is not enabled, using TSC as default timer
12/05/2020 13:44:22             dut.10.240.183.202: set_rxtx_sc poll_before_xmit
12/05/2020 13:44:22             dut.10.240.183.202: set_rxtx_sc poll_before_xmit
stream control switch to poll_before_xmit
12/05/2020 13:44:22             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:44:35             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
Allocated mbuf pool on socket 0
CONFIG RXD=2048 TXD=2048
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port 1 Link Down
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
start to receive total expect 4096
1037 packets lost, IDLE 10000 times
Result: 483 cycles per packet
Test OK
12/05/2020 13:44:35           TestUnitTestsPmdPerf: Mode poll_before_xmit latency is 483
12/05/2020 13:44:35             dut.10.240.183.202: set_rxtx_sc poll_after_xmit
12/05/2020 13:44:35             dut.10.240.183.202: set_rxtx_sc poll_after_xmit
stream control switch to poll_after_xmit
12/05/2020 13:44:35             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:44:48             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=2048 TXD=2048
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port 1 Link Down
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
start to receive total expect 4096
0 packets lost, IDLE 0 times
Result: 36 cycles per packet
Test OK
12/05/2020 13:44:48           TestUnitTestsPmdPerf: Mode poll_after_xmit latency is 36
12/05/2020 13:44:48             dut.10.240.183.202: quit
12/05/2020 13:44:48             dut.10.240.183.202: quit
12/05/2020 13:44:48           TestUnitTestsPmdPerf: Test Case test_pmd_burst Result PASSED:
12/05/2020 13:44:48             dut.10.240.183.202: kill_all: called by dut and prefix list has value.
12/05/2020 13:44:48           TestUnitTestsPmdPerf: Test Case test_pmd_continues Begin
12/05/2020 13:44:48             dut.10.240.183.202: 
12/05/2020 13:44:48                         tester: 
12/05/2020 13:44:48             dut.10.240.183.202: ./app/test/test -l 1,2,3,4 -n 4 -w 0000:03:00.0 -w 0000:03:00.1  --file-prefix=dpdk_27008_20200512133142   
12/05/2020 13:44:51             dut.10.240.183.202: EAL: Detected 16 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/dpdk_27008_20200512133142/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: 1024 hugepages of size 2097152 reserved, but no mounted hugetlbfs found for that size
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.0 (socket 0)
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.1 (socket 0)
No telemetry legacy support - No legacy callbacks, legacy socket not created
APP: HPET is not enabled, using TSC as default timer
12/05/2020 13:44:51             dut.10.240.183.202: set_rxtx_sc continuous
12/05/2020 13:44:51             dut.10.240.183.202: set_rxtx_sc continuous
stream control switch to continuous
12/05/2020 13:44:51             dut.10.240.183.202: set_rxtx_mode vector
12/05/2020 13:44:51             dut.10.240.183.202: set_rxtx_mode vector
mode switch to vector
12/05/2020 13:44:51             dut.10.240.183.202: set_rxtx_anchor rxtx
12/05/2020 13:44:51             dut.10.240.183.202: set_rxtx_anchor rxtx
type switch to rxtx
12/05/2020 13:44:51             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:45:00             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
Allocated mbuf pool on socket 0
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port 1 Link Down
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 108 (expected 2048) mbuf left in port 0
free 652 (expected 2048) mbuf left in port 1
5952380 packet, 1310 drop, 86368951 idle
Result: 397 cycles per packet
Test OK
12/05/2020 13:45:00             dut.10.240.183.202: set_rxtx_anchor rxonly
12/05/2020 13:45:00             dut.10.240.183.202: set_rxtx_anchor rxonly
type switch to rxonly
12/05/2020 13:45:00             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:45:10             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port 1 Link Down
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 104 (expected 2048) mbuf left in port 0
free 652 (expected 2048) mbuf left in port 1
5952380 packet, 1330 drop, 60256014 idle
Result: 80 cycles per packet
Test OK
12/05/2020 13:45:10             dut.10.240.183.202: set_rxtx_anchor txonly
12/05/2020 13:45:10             dut.10.240.183.202: set_rxtx_anchor txonly
type switch to txonly
12/05/2020 13:45:10             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:45:19             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port 1 Link Down
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
do tx measure
free 100 (expected 2048) mbuf left in port 0
free 636 (expected 2048) mbuf left in port 1
5952380 packet, 1242 drop, 87254597 idle
Result: 28 cycles per packet
Test OK
12/05/2020 13:45:19             dut.10.240.183.202: quit
12/05/2020 13:45:19             dut.10.240.183.202: quit
12/05/2020 13:45:19             dut.10.240.183.202: ./app/test/test_scalar -l 1,2,3,4 -n 4 -w 0000:03:00.0 -w 0000:03:00.1  --file-prefix=dpdk_27008_20200512133142   
12/05/2020 13:45:22             dut.10.240.183.202: EAL: Detected 16 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/dpdk_27008_20200512133142/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: 1024 hugepages of size 2097152 reserved, but no mounted hugetlbfs found for that size
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.0 (socket 0)
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.1 (socket 0)
No telemetry legacy support - No legacy callbacks, legacy socket not created
APP: HPET is not enabled, using TSC as default timer
12/05/2020 13:45:22             dut.10.240.183.202: set_rxtx_sc continuous
12/05/2020 13:45:22             dut.10.240.183.202: set_rxtx_sc continuous
stream control switch to continuous
12/05/2020 13:45:22             dut.10.240.183.202: set_rxtx_mode scalar
12/05/2020 13:45:22             dut.10.240.183.202: set_rxtx_mode scalar
mode switch to scalar
12/05/2020 13:45:22             dut.10.240.183.202: set_rxtx_anchor rxtx
12/05/2020 13:45:22             dut.10.240.183.202: set_rxtx_anchor rxtx
type switch to rxtx
12/05/2020 13:45:22             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:45:31             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
Allocated mbuf pool on socket 0
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port1 Link Up. Speed 1000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 104 (expected 2048) mbuf left in port 0
free 224 (expected 2048) mbuf left in port 1
5952380 packet, 946 drop, 197947425 idle
Result: 707 cycles per packet
Test OK
12/05/2020 13:45:31             dut.10.240.183.202: set_rxtx_anchor rxonly
12/05/2020 13:45:31             dut.10.240.183.202: set_rxtx_anchor rxonly
type switch to rxonly
12/05/2020 13:45:31             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:45:41             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port 0 Link Down
Port 1 Link Down
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 312 (expected 2048) mbuf left in port 0
free 708 (expected 2048) mbuf left in port 1
5952380 packet, 813 drop, 31801981 idle
Result: 80 cycles per packet
Test OK
12/05/2020 13:45:41             dut.10.240.183.202: set_rxtx_anchor txonly
12/05/2020 13:45:41             dut.10.240.183.202: set_rxtx_anchor txonly
type switch to txonly
12/05/2020 13:45:41             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:45:50             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port1 Link Up. Speed 1000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
do tx measure
free 100 (expected 2048) mbuf left in port 0
free 260 (expected 2048) mbuf left in port 1
5952380 packet, 1194 drop, 192502257 idle
Result: 30 cycles per packet
Test OK
12/05/2020 13:45:50             dut.10.240.183.202: quit
12/05/2020 13:45:51             dut.10.240.183.202: quit
12/05/2020 13:45:51             dut.10.240.183.202: ./app/test/test -l 1,2,3,4 -n 4 -w 0000:03:00.0 -w 0000:03:00.1  --file-prefix=dpdk_27008_20200512133142   
12/05/2020 13:45:53             dut.10.240.183.202: EAL: Detected 16 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/dpdk_27008_20200512133142/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: 1024 hugepages of size 2097152 reserved, but no mounted hugetlbfs found for that size
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.0 (socket 0)
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.1 (socket 0)
No telemetry legacy support - No legacy callbacks, legacy socket not created
APP: HPET is not enabled, using TSC as default timer
12/05/2020 13:45:53             dut.10.240.183.202: set_rxtx_sc continuous
12/05/2020 13:45:53             dut.10.240.183.202: set_rxtx_sc continuous
stream control switch to continuous
12/05/2020 13:45:53             dut.10.240.183.202: set_rxtx_mode full
12/05/2020 13:45:53             dut.10.240.183.202: set_rxtx_mode full
mode switch to full
12/05/2020 13:45:53             dut.10.240.183.202: set_rxtx_anchor rxtx
12/05/2020 13:45:53             dut.10.240.183.202: set_rxtx_anchor rxtx
type switch to rxtx
12/05/2020 13:45:53             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:46:02             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
Allocated mbuf pool on socket 0
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port 0 Link Down
Port1 Link Up. Speed 1000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 512 (expected 2048) mbuf left in port 0
free 392 (expected 2048) mbuf left in port 1
5952380 packet, 937 drop, 51564084 idle
Result: 396 cycles per packet
Test OK
12/05/2020 13:46:02             dut.10.240.183.202: set_rxtx_anchor rxonly
12/05/2020 13:46:02             dut.10.240.183.202: set_rxtx_anchor rxonly
type switch to rxonly
12/05/2020 13:46:02             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:46:12             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port 0 Link Down
Port 1 Link Down
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 516 (expected 2048) mbuf left in port 0
free 1104 (expected 2048) mbuf left in port 1
5952380 packet, 837 drop, 21920690 idle
Result: 90 cycles per packet
Test OK
12/05/2020 13:46:12             dut.10.240.183.202: set_rxtx_anchor txonly
12/05/2020 13:46:12             dut.10.240.183.202: set_rxtx_anchor txonly
type switch to txonly
12/05/2020 13:46:12             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:46:21             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port1 Link Up. Speed 1000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
do tx measure
free 172 (expected 2048) mbuf left in port 0
free 368 (expected 2048) mbuf left in port 1
5952380 packet, 1174 drop, 121406166 idle
Result: 31 cycles per packet
Test OK
12/05/2020 13:46:21             dut.10.240.183.202: quit
12/05/2020 13:46:21             dut.10.240.183.202: quit
12/05/2020 13:46:21             dut.10.240.183.202: ./app/test/test -l 1,2,3,4 -n 4 -w 0000:03:00.0 -w 0000:03:00.1  --file-prefix=dpdk_27008_20200512133142   
12/05/2020 13:46:24             dut.10.240.183.202: EAL: Detected 16 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/dpdk_27008_20200512133142/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: 1024 hugepages of size 2097152 reserved, but no mounted hugetlbfs found for that size
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.0 (socket 0)
EAL: Probe PCI driver: net_ixgbe (8086:15ad) device: 0000:03:00.1 (socket 0)
No telemetry legacy support - No legacy callbacks, legacy socket not created
APP: HPET is not enabled, using TSC as default timer
12/05/2020 13:46:24             dut.10.240.183.202: set_rxtx_sc continuous
12/05/2020 13:46:24             dut.10.240.183.202: set_rxtx_sc continuous
stream control switch to continuous
12/05/2020 13:46:24             dut.10.240.183.202: set_rxtx_mode hybrid
12/05/2020 13:46:24             dut.10.240.183.202: set_rxtx_mode hybrid
mode switch to hybrid
12/05/2020 13:46:24             dut.10.240.183.202: set_rxtx_anchor rxtx
12/05/2020 13:46:24             dut.10.240.183.202: set_rxtx_anchor rxtx
type switch to rxtx
12/05/2020 13:46:24             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:46:33             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
Allocated mbuf pool on socket 0
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port1 Link Up. Speed 1000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 104 (expected 2048) mbuf left in port 0
free 228 (expected 2048) mbuf left in port 1
5952380 packet, 950 drop, 198387872 idle
Result: 706 cycles per packet
Test OK
12/05/2020 13:46:33             dut.10.240.183.202: set_rxtx_anchor rxonly
12/05/2020 13:46:33             dut.10.240.183.202: set_rxtx_anchor rxonly
type switch to rxonly
12/05/2020 13:46:33             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:46:42             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port1 Link Up. Speed 1000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
free 96 (expected 2048) mbuf left in port 0
free 224 (expected 2048) mbuf left in port 1
5952380 packet, 1258 drop, 134237789 idle
Result: 79 cycles per packet
Test OK
12/05/2020 13:46:42             dut.10.240.183.202: set_rxtx_anchor txonly
12/05/2020 13:46:42             dut.10.240.183.202: set_rxtx_anchor txonly
type switch to txonly
12/05/2020 13:46:42             dut.10.240.183.202: pmd_perf_autotest
12/05/2020 13:46:52             dut.10.240.183.202: pmd_perf_autotest
Start PMD RXTX cycles cost test.
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 2 socket 0
Port 0 Address:0C:C4:7A:C8:7E:1E
Port 1 Address:0C:C4:7A:C8:7E:1F
Checking link statuses...
Port0 Link Up. Speed 1000 Mbps - full-duplex
Port1 Link Up. Speed 1000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 4096 packets @socket 0
inject 2048 packet to port 0
inject 2048 packet to port 1
Total packets inject to prime ports = 4096
Each port will do 1488095 packets per second
Test will stop after at least 5952380 packets received
do tx measure
free 104 (expected 2048) mbuf left in port 0
free 228 (expected 2048) mbuf left in port 1
5952380 packet, 1162 drop, 197469773 idle
Result: 30 cycles per packet
Test OK
12/05/2020 13:46:52             dut.10.240.183.202: quit
12/05/2020 13:46:52             dut.10.240.183.202: quit
12/05/2020 13:46:52           TestUnitTestsPmdPerf: 
+--------+------+--------+--------+
|  Mode  | rxtx | rxonly | txonly |
+========+======+========+========+
| vector | 397  | 80     | 28     |
+--------+------+--------+--------+
| scalar | 707  | 80     | 30     |
+--------+------+--------+--------+
| full   | 396  | 90     | 31     |
+--------+------+--------+--------+
| hybrid | 706  | 79     | 30     |
+--------+------+--------+--------+
12/05/2020 13:46:52           TestUnitTestsPmdPerf: Test Case test_pmd_continues Result PASSED:
12/05/2020 13:46:52             dut.10.240.183.202: kill_all: called by dut and prefix list has value.
12/05/2020 13:46:52                            dts: 
TEST SUITE ENDED: TestUnitTestsPmdPerf

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test
  2020-05-12  5:58 [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test Xiao Qimai
  2020-05-12  5:58 ` [dts] [PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update Xiao Qimai
@ 2020-05-12  6:11 ` Xiao, QimaiX
  2020-06-02  5:47 ` Tu, Lijuan
  2 siblings, 0 replies; 5+ messages in thread
From: Xiao, QimaiX @ 2020-05-12  6:11 UTC (permalink / raw)
  To: dts


[-- Attachment #1.1: Type: text/plain, Size: 5313 bytes --]

Tested-by:Xiao Qimai <qimaix.xiao@intel.com>

________________________________
From: Xiao, QimaiX <qimaix.xiao@intel.com>
Sent: Tuesday, May 12, 2020 1:58 PM
To: dts@dpdk.org <dts@dpdk.org>
Cc: Xiao, QimaiX <qimaix.xiao@intel.com>
Subject: [dts][PATCH V1]unit_tests_loopback: update compile cmd of app/test

*. update compile cmd of app/test according to dpdk's update

Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
---
 tests/TestSuite_unit_tests_loopback.py | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/tests/TestSuite_unit_tests_loopback.py b/tests/TestSuite_unit_tests_loopback.py
index 68b1f30..c1d37b2 100644
--- a/tests/TestSuite_unit_tests_loopback.py
+++ b/tests/TestSuite_unit_tests_loopback.py
@@ -70,6 +70,8 @@ class TestUnitTestsLoopback(TestCase):
         self.verify(self.arch in ["x86_64", "arm64"], "pmd perf request running in x86_64 or arm64")
         self.max_traffic_burst = self.get_max_traffic_burst()
         self.dut.send_expect("sed -i -e 's/#define MAX_TRAFFIC_BURST              %s/#define MAX_TRAFFIC_BURST              32/' app/test/test_pmd_perf.c" % self.max_traffic_burst, "# ", 30)
+        self.tmp_path = '/tmp/test_pmd_perf.c'
+        self.dut.send_expect("cp app/test/test_pmd_perf.c %s" % self.tmp_path, "# ")

     def set_up(self):
         """
@@ -90,14 +92,14 @@ class TestUnitTestsLoopback(TestCase):
         Run pmd stream control mode burst test case.
         """
         self.dut.send_expect("sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/' app/test/test_pmd_perf.c", "# ", 30)
-        out = self.dut.build_dpdk_apps('app/test')
-        self.verify("Error" not in out, "Compilation error")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
         self.verify("No such" not in out, "Compilation error")

         self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
-        self.tester.send_expect("tcpdump -i %s -w ./getPackageByTcpdump.cap 2> /dev/null& " % self.tester_itf, "#")
+        self.tester.send_expect("tcpdump -i %s ether[12:2] != '0x88cc' -w ./getPackageByTcpdump.cap 2> /dev/null& " % self.tester_itf, "#")
         eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        self.dut.send_expect("./app/test/test %s" % (eal_params), "R.*T.*E.*>.*>", 60)
+        self.dut.send_expect("./%s/app/test %s" % (self.target, eal_params), "R.*T.*E.*>.*>", 60)
         out = self.dut.send_expect("pmd_perf_autotest", "RTE>>", 120)
         print(out)
         self.dut.send_expect("quit", "# ")
@@ -113,14 +115,14 @@ class TestUnitTestsLoopback(TestCase):
         """
         self.dut.send_expect("sed -i -e 's/lpbk_mode = 1/lpbk_mode = 0/' app/test/test_pmd_perf.c", "# ", 30)
         self.dut.send_expect("sed -i -e '/check_all_ports_link_status(nb_ports, RTE_PORT_ALL);/a\        sleep(6);' app/test/test_pmd_perf.c", "# ", 30)
-        out = self.dut.build_dpdk_apps('app/test')
-        self.verify("Error" not in out, "Compilation error")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
         self.verify("No such" not in out, "Compilation error")

         self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
         self.tester.send_expect("tcpdump -i %s -w ./getPackageByTcpdump.cap 2> /dev/null& " % self.tester_itf, "#")
         eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        self.dut.send_expect("./app/test/test %s" % (eal_params), "R.*T.*E.*>.*>", 60)
+        self.dut.send_expect("./%s/app/test %s" % (self.target, eal_params), "R.*T.*E.*>.*>", 60)
         self.dut.send_command("pmd_perf_autotest", 30)
         # There is no packet loopback, so the test is hung.
         # It needs to kill the process manually.
@@ -133,16 +135,16 @@ class TestUnitTestsLoopback(TestCase):
         """
         Run after each test case.
         """
+        self.dut.send_expect("cp %s app/test/test_pmd_perf.c" % self.tmp_path, "# ")
         self.dut.kill_all()

     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/' app/test/test_pmd_perf.c", "# ", 30)
-        self.dut.send_expect("sed -i -e '/sleep(6)/d' app/test/test_pmd_perf.c", "# ", 30)
+        self.dut.send_expect("cp %s app/test/test_pmd_perf.c" % self.tmp_path, "# ")
         self.dut.send_expect("sed -i -e 's/#define MAX_TRAFFIC_BURST              32/#define MAX_TRAFFIC_BURST              %s/' app/test/test_pmd_perf.c" % self.max_traffic_burst, "# ", 30)
-        out = self.dut.build_dpdk_apps('app/test')
-        self.verify("Error" not in out, "Compilation error")
+        out = self.dut.send_expect("make -j %s app/test_sub O=%s" % (self.dut.number_of_cores, self.target), "#")
+        self.verify("Error" not in out, "compilation l3fwd-power error")
         self.verify("No such" not in out, "Compilation error")
         self.dut.kill_all()
--
1.8.3.1


[-- Attachment #1.2: Type: text/html, Size: 10321 bytes --]

[-- Attachment #2: TestUnitTestsLoopback.log --]
[-- Type: application/octet-stream, Size: 37138 bytes --]

12/05/2020 11:40:05                            dts: 
TEST SUITE : TestUnitTestsLoopback
12/05/2020 11:40:05                            dts: NIC :        fortville_spirit
12/05/2020 11:40:06              dut.10.240.183.61: 
12/05/2020 11:40:06                         tester: 
12/05/2020 11:40:06              dut.10.240.183.61: cat app/test/test_pmd_perf.c
12/05/2020 11:40:06              dut.10.240.183.61: /* SPDX-License-Identifier: BSD-3-Clause
 * Copyright(c) 2010-2014 Intel Corporation
 */


#include <stdio.h>
#include <inttypes.h>
#include <signal.h>
#include <unistd.h>
#include <rte_cycles.h>
#include <rte_ethdev.h>
#include <rte_byteorder.h>
#include <rte_atomic.h>
#include <rte_malloc.h>
#include "packet_burst_generator.h"
#include "test.h"

#define NB_ETHPORTS_USED                (1)
#define NB_SOCKETS                      (2)
#define MEMPOOL_CACHE_SIZE 250
#define MAX_PKT_BURST                   (32)
#define RTE_TEST_RX_DESC_DEFAULT        (1024)
#define RTE_TEST_TX_DESC_DEFAULT        (1024)
#define RTE_PORT_ALL            (~(uint16_t)0x0)

/* how long test would take at full line rate */
#define RTE_TEST_DURATION                (2)

/*
 * RX and TX Prefetch, Host, and Write-back threshold values should be
 * carefully set for optimal performance. Consult the network
 * controller's datasheet and supporting DPDK documentation for guidance
 * on how these parameters should be set.
 */
#define RX_PTHRESH 8 /**< Default values of RX prefetch threshold reg. */
#define RX_HTHRESH 8 /**< Default values of RX host threshold reg. */
#define RX_WTHRESH 0 /**< Default values of RX write-back threshold reg. */

/*
 * These default values are optimized for use with the Intel(R) 82599 10 GbE
 * Controller and the DPDK ixgbe PMD. Consider using other values for other
 * network controllers and/or network drivers.
 */
#define TX_PTHRESH 32 /**< Default values of TX prefetch threshold reg. */
#define TX_HTHRESH 0  /**< Default values of TX host threshold reg. */
#define TX_WTHRESH 0  /**< Default values of TX write-back threshold reg. */

#define MAX_TRAFFIC_BURST              2048

#define NB_MBUF RTE_MAX(						\
		(unsigned)(nb_ports*nb_rx_queue*nb_rxd +		\
			   nb_ports*nb_lcores*MAX_PKT_BURST +		\
			   nb_ports*nb_tx_queue*nb_txd +		\
			   nb_lcores*MEMPOOL_CACHE_SIZE +		\
			   nb_ports*MAX_TRAFFIC_BURST),			\
			(unsigned)8192)


static struct rte_mempool *mbufpool[NB_SOCKETS];
/* ethernet addresses of ports */
static struct rte_ether_addr ports_eth_addr[RTE_MAX_ETHPORTS];

static struct rte_eth_conf port_conf = {
	.rxmode = {
		.mq_mode = ETH_MQ_RX_NONE,
		.max_rx_pkt_len = RTE_ETHER_MAX_LEN,
		.split_hdr_size = 0,
	},
	.txmode = {
		.mq_mode = ETH_MQ_TX_NONE,
	},
	.lpbk_mode = 1,  /* enable loopback */
};

static struct rte_eth_rxconf rx_conf = {
	.rx_thresh = {
		.pthresh = RX_PTHRESH,
		.hthresh = RX_HTHRESH,
		.wthresh = RX_WTHRESH,
	},
	.rx_free_thresh = 32,
};

static struct rte_eth_txconf tx_conf = {
	.tx_thresh = {
		.pthresh = TX_PTHRESH,
		.hthresh = TX_HTHRESH,
		.wthresh = TX_WTHRESH,
	},
	.tx_free_thresh = 32, /* Use PMD default values */
	.tx_rs_thresh = 32, /* Use PMD default values */
};

enum {
	LCORE_INVALID = 0,
	LCORE_AVAIL,
	LCORE_USED,
};

struct lcore_conf {
	uint8_t status;
	uint8_t socketid;
	uint16_t nb_ports;
	uint16_t portlist[RTE_MAX_ETHPORTS];
} __rte_cache_aligned;

struct lcore_conf lcore_conf[RTE_MAX_LCORE];

static uint64_t link_mbps;

enum {
	SC_CONTINUOUS = 0,
	SC_BURST_POLL_FIRST,
	SC_BURST_XMIT_FIRST,
};

static uint32_t sc_flag;

/* Check the link status of all ports in up to 3s, and print them finally */
static void
check_all_ports_link_status(uint16_t port_num, uint32_t port_mask)
{
#define CHECK_INTERVAL 100 /* 100ms */
#define MAX_CHECK_TIME 30 /* 3s (30 * 100ms) in total */
	uint16_t portid;
	uint8_t count, all_ports_up, print_flag = 0;
	struct rte_eth_link link;
	int ret;

	printf("Checking link statuses...\n");
	fflush(stdout);
	for (count = 0; count <= MAX_CHECK_TIME; count++) {
		all_ports_up = 1;
		for (portid = 0; portid < port_num; portid++) {
			if ((port_mask & (1 << portid)) == 0)
				continue;
			memset(&link, 0, sizeof(link));
			ret = rte_eth_link_get_nowait(portid, &link);
			if (ret < 0) {
				all_ports_up = 0;
				if (print_flag == 1)
					printf("Port %u link get failed: %s\n",
						portid, rte_strerror(-ret));
				continue;
			}

			/* print link status if flag set */
			if (print_flag == 1) {
				if (link.link_status) {
					printf(
					"Port%d Link Up. Speed %u Mbps - %s\n",
						portid, link.link_speed,
				(link.link_duplex == ETH_LINK_FULL_DUPLEX) ?
					("full-duplex") : ("half-duplex"));
					if (link_mbps == 0)
						link_mbps = link.link_speed;
				} else
					printf("Port %d Link Down\n", portid);
				continue;
			}
			/* clear all_ports_up flag if any link down */
			if (link.link_status == ETH_LINK_DOWN) {
				all_ports_up = 0;
				break;
			}
		}
		/* after finally printing all link status, get out */
		if (print_flag == 1)
			break;

		if (all_ports_up == 0) {
			fflush(stdout);
			rte_delay_ms(CHECK_INTERVAL);
		}

		/* set the print_flag if all ports up or timeout */
		if (all_ports_up == 1 || count == (MAX_CHECK_TIME - 1))
			print_flag = 1;
	}
}

static void
print_ethaddr(const char *name, const struct rte_ether_addr *eth_addr)
{
	char buf[RTE_ETHER_ADDR_FMT_SIZE];
	rte_ether_format_addr(buf, RTE_ETHER_ADDR_FMT_SIZE, eth_addr);
	printf("%s%s", name, buf);
}

static int
init_traffic(struct rte_mempool *mp,
	     struct rte_mbuf **pkts_burst, uint32_t burst_size)
{
	struct rte_ether_hdr pkt_eth_hdr;
	struct rte_ipv4_hdr pkt_ipv4_hdr;
	struct rte_udp_hdr pkt_udp_hdr;
	uint32_t pktlen;
	static uint8_t src_mac[] = { 0x00, 0xFF, 0xAA, 0xFF, 0xAA, 0xFF };
	static uint8_t dst_mac[] = { 0x00, 0xAA, 0xFF, 0xAA, 0xFF, 0xAA };


	initialize_eth_header(&pkt_eth_hdr,
		(struct rte_ether_addr *)src_mac,
		(struct rte_ether_addr *)dst_mac, RTE_ETHER_TYPE_IPV4, 0, 0);

	pktlen = initialize_ipv4_header(&pkt_ipv4_hdr,
					IPV4_ADDR(10, 0, 0, 1),
					IPV4_ADDR(10, 0, 0, 2), 26);
	printf("IPv4 pktlen %u\n", pktlen);

	pktlen = initialize_udp_header(&pkt_udp_hdr, 0, 0, 18);

	printf("UDP pktlen %u\n", pktlen);

	return generate_packet_burst(mp, pkts_burst, &pkt_eth_hdr,
				     0, &pkt_ipv4_hdr, 1,
				     &pkt_udp_hdr, burst_size,
				     PACKET_BURST_GEN_PKT_LEN, 1);
}

static int
init_lcores(void)
{
	unsigned lcore_id;

	for (lcore_id = 0; lcore_id < RTE_MAX_LCORE; lcore_id++) {
		lcore_conf[lcore_id].socketid =
			rte_lcore_to_socket_id(lcore_id);
		if (rte_lcore_is_enabled(lcore_id) == 0) {
			lcore_conf[lcore_id].status = LCORE_INVALID;
			continue;
		} else
			lcore_conf[lcore_id].status = LCORE_AVAIL;
	}
	return 0;
}

static int
init_mbufpool(unsigned nb_mbuf)
{
	int socketid;
	unsigned lcore_id;
	char s[64];

	for (lcore_id = 0; lcore_id < RTE_MAX_LCORE; lcore_id++) {
		if (rte_lcore_is_enabled(lcore_id) == 0)
			continue;

		socketid = rte_lcore_to_socket_id(lcore_id);
		if (socketid >= NB_SOCKETS) {
			rte_exit(EXIT_FAILURE,
				"Socket %d of lcore %u is out of range %d\n",
				socketid, lcore_id, NB_SOCKETS);
		}
		if (mbufpool[socketid] == NULL) {
			snprintf(s, sizeof(s), "mbuf_pool_%d", socketid);
			mbufpool[socketid] =
				rte_pktmbuf_pool_create(s, nb_mbuf,
					MEMPOOL_CACHE_SIZE, 0,
					RTE_MBUF_DEFAULT_BUF_SIZE, socketid);
			if (mbufpool[socketid] == NULL)
				rte_exit(EXIT_FAILURE,
					"Cannot init mbuf pool on socket %d\n",
					socketid);
			else
				printf("Allocated mbuf pool on socket %d\n",
					socketid);
		}
	}
	return 0;
}

static uint16_t
alloc_lcore(uint16_t socketid)
{
	unsigned lcore_id;

	for (lcore_id = 0; lcore_id < RTE_MAX_LCORE; lcore_id++) {
		if (LCORE_AVAIL != lcore_conf[lcore_id].status ||
		    lcore_conf[lcore_id].socketid != socketid ||
		    lcore_id == rte_get_master_lcore())
			continue;
		lcore_conf[lcore_id].status = LCORE_USED;
		lcore_conf[lcore_id].nb_ports = 0;
		return lcore_id;
	}

	return (uint16_t)-1;
}

static volatile uint64_t stop;
static uint64_t count;
static uint64_t drop;
static uint64_t idle;

static void
reset_count(void)
{
	count = 0;
	drop = 0;
	idle = 0;
}

static void
stats_display(uint16_t port_id)
{
	struct rte_eth_stats stats;
	rte_eth_stats_get(port_id, &stats);

	printf("  RX-packets: %-10"PRIu64" RX-missed: %-10"PRIu64" RX-bytes:  "
	       "%-"PRIu64"\n",
	       stats.ipackets, stats.imissed, stats.ibytes);
	printf("  RX-errors: %-10"PRIu64" RX-nombuf:  %-10"PRIu64"\n",
	       stats.ierrors, stats.rx_nombuf);
	printf("  TX-packets: %-10"PRIu64" TX-errors: %-10"PRIu64" TX-bytes:  "
	       "%-"PRIu64"\n",
	       stats.opackets, stats.oerrors, stats.obytes);
}

static void
signal_handler(int signum)
{
	/*  USR1 signal, stop testing */
	if (signum == SIGUSR1) {
		printf("Force Stop!\n");
		stop = 1;
	}

	/*  USR2 signal, print stats */
	if (signum == SIGUSR2)
		stats_display(0);
}

struct rte_mbuf **tx_burst;

uint64_t (*do_measure)(struct lcore_conf *conf,
		       struct rte_mbuf *pkts_burst[],
		       uint64_t total_pkts);

static uint64_t
measure_rxtx(struct lcore_conf *conf,
	     struct rte_mbuf *pkts_burst[],
	     uint64_t total_pkts)
{
	unsigned i, portid, nb_rx, nb_tx;
	uint64_t prev_tsc, cur_tsc;

	prev_tsc = rte_rdtsc();

	while (likely(!stop)) {
		for (i = 0; i < conf->nb_ports; i++) {
			portid = conf->portlist[i];
			nb_rx = rte_eth_rx_burst(portid, 0,
						 pkts_burst, MAX_PKT_BURST);
			if (unlikely(nb_rx == 0)) {
				idle++;
				continue;
			}

			count += nb_rx;
			nb_tx = rte_eth_tx_burst(portid, 0, pkts_burst, nb_rx);
			if (unlikely(nb_tx < nb_rx)) {
				drop += (nb_rx - nb_tx);
				do {
					rte_pktmbuf_free(pkts_burst[nb_tx]);
				} while (++nb_tx < nb_rx);
			}
		}
		if (unlikely(count >= total_pkts))
			break;
	}

	cur_tsc = rte_rdtsc();

	return cur_tsc - prev_tsc;
}

static uint64_t
measure_rxonly(struct lcore_conf *conf,
	       struct rte_mbuf *pkts_burst[],
	       uint64_t total_pkts)
{
	unsigned i, portid, nb_rx, nb_tx;
	uint64_t diff_tsc, cur_tsc;

	diff_tsc = 0;
	while (likely(!stop)) {
		for (i = 0; i < conf->nb_ports; i++) {
			portid = conf->portlist[i];

			cur_tsc = rte_rdtsc();
			nb_rx = rte_eth_rx_burst(portid, 0,
						 pkts_burst, MAX_PKT_BURST);
			if (unlikely(nb_rx == 0)) {
				idle++;
				continue;
			}
			diff_tsc += rte_rdtsc() - cur_tsc;

			count += nb_rx;
			nb_tx = rte_eth_tx_burst(portid, 0, pkts_burst, nb_rx);
			if (unlikely(nb_tx < nb_rx)) {
				drop += (nb_rx - nb_tx);
				do {
					rte_pktmbuf_free(pkts_burst[nb_tx]);
				} while (++nb_tx < nb_rx);
			}
		}
		if (unlikely(count >= total_pkts))
			break;
	}

	return diff_tsc;
}

static uint64_t
measure_txonly(struct lcore_conf *conf,
	       struct rte_mbuf *pkts_burst[],
	       uint64_t total_pkts)
{
	unsigned i, portid, nb_rx, nb_tx;
	uint64_t diff_tsc, cur_tsc;

	printf("do tx measure\n");
	diff_tsc = 0;
	while (likely(!stop)) {
		for (i = 0; i < conf->nb_ports; i++) {
			portid = conf->portlist[i];
			nb_rx = rte_eth_rx_burst(portid, 0,
						 pkts_burst, MAX_PKT_BURST);
			if (unlikely(nb_rx == 0)) {
				idle++;
				continue;
			}

			count += nb_rx;

			cur_tsc = rte_rdtsc();
			nb_tx = rte_eth_tx_burst(portid, 0, pkts_burst, nb_rx);
			if (unlikely(nb_tx < nb_rx)) {
				drop += (nb_rx - nb_tx);
				do {
					rte_pktmbuf_free(pkts_burst[nb_tx]);
				} while (++nb_tx < nb_rx);
			}
			diff_tsc += rte_rdtsc() - cur_tsc;
		}
		if (unlikely(count >= total_pkts))
			break;
	}

	return diff_tsc;
}

/* main processing loop */
static int
main_loop(__rte_unused void *args)
{
#define PACKET_SIZE 64
#define FRAME_GAP 12
#define MAC_PREAMBLE 8
	struct rte_mbuf *pkts_burst[MAX_PKT_BURST];
	unsigned lcore_id;
	unsigned i, portid, nb_rx = 0, nb_tx = 0;
	struct lcore_conf *conf;
	int pkt_per_port;
	uint64_t diff_tsc;
	uint64_t packets_per_second, total_packets;

	lcore_id = rte_lcore_id();
	conf = &lcore_conf[lcore_id];
	if (conf->status != LCORE_USED)
		return 0;

	pkt_per_port = MAX_TRAFFIC_BURST;

	int idx = 0;
	for (i = 0; i < conf->nb_ports; i++) {
		int num = pkt_per_port;
		portid = conf->portlist[i];
		printf("inject %d packet to port %d\n", num, portid);
		while (num) {
			nb_tx = RTE_MIN(MAX_PKT_BURST, num);
			nb_tx = rte_eth_tx_burst(portid, 0,
						&tx_burst[idx], nb_tx);
			num -= nb_tx;
			idx += nb_tx;
		}
	}
	printf("Total packets inject to prime ports = %u\n", idx);

	packets_per_second = (link_mbps * 1000 * 1000) /
		((PACKET_SIZE + FRAME_GAP + MAC_PREAMBLE) * CHAR_BIT);
	printf("Each port will do %"PRIu64" packets per second\n",
	       packets_per_second);

	total_packets = RTE_TEST_DURATION * conf->nb_ports * packets_per_second;
	printf("Test will stop after at least %"PRIu64" packets received\n",
		+ total_packets);

	diff_tsc = do_measure(conf, pkts_burst, total_packets);

	for (i = 0; i < conf->nb_ports; i++) {
		portid = conf->portlist[i];
		int nb_free = 0;
		uint64_t timeout = 10000;
		do { /* dry out */
			nb_rx = rte_eth_rx_burst(portid, 0,
						 pkts_burst, MAX_PKT_BURST);
			nb_tx = 0;
			while (nb_tx < nb_rx)
				rte_pktmbuf_free(pkts_burst[nb_tx++]);
			nb_free += nb_rx;

			if (unlikely(nb_rx == 0))
				timeout--;
		} while (nb_free != pkt_per_port && timeout != 0);
		printf("free %d (expected %d) mbuf left in port %u\n", nb_free,
		       pkt_per_port, portid);
	}

	if (count == 0)
		return -1;

	printf("%"PRIu64" packet, %"PRIu64" drop, %"PRIu64" idle\n",
	       count, drop, idle);
	printf("Result: %"PRIu64" cycles per packet\n", diff_tsc / count);

	return 0;
}

static rte_atomic64_t start;

static inline int
poll_burst(void *args)
{
#define MAX_IDLE           (10000)
	unsigned lcore_id;
	struct rte_mbuf **pkts_burst;
	uint64_t diff_tsc, cur_tsc;
	uint16_t next[RTE_MAX_ETHPORTS];
	struct lcore_conf *conf;
	uint32_t pkt_per_port = *((uint32_t *)args);
	unsigned i, portid, nb_rx = 0;
	uint64_t total;
	uint64_t timeout = MAX_IDLE;
	int num[RTE_MAX_ETHPORTS];

	lcore_id = rte_lcore_id();
	conf = &lcore_conf[lcore_id];
	if (conf->status != LCORE_USED)
		return 0;

	total = pkt_per_port * conf->nb_ports;
	printf("start to receive total expect %"PRIu64"\n", total);

	pkts_burst = (struct rte_mbuf **)
		rte_calloc_socket("poll_burst",
				  total, sizeof(void *),
				  RTE_CACHE_LINE_SIZE, conf->socketid);
	if (!pkts_burst)
		return -1;

	for (i = 0; i < conf->nb_ports; i++) {
		portid = conf->portlist[i];
		next[portid] = i * pkt_per_port;
		num[portid] = pkt_per_port;
	}

	while (!rte_atomic64_read(&start))
		;

	cur_tsc = rte_rdtsc();
	while (total) {
		for (i = 0; i < conf->nb_ports; i++) {
			portid = conf->portlist[i];
			nb_rx = rte_eth_rx_burst(portid, 0,
					&pkts_burst[next[portid]],
					RTE_MIN(MAX_PKT_BURST, num[portid]));
			if (unlikely(nb_rx == 0)) {
				timeout--;
				if (unlikely(timeout == 0))
					goto timeout;
				continue;
			}
			next[portid] += nb_rx;
			num[portid] -= nb_rx;
			total -= nb_rx;
		}
	}
timeout:
	diff_tsc = rte_rdtsc() - cur_tsc;

	printf("%"PRIu64" packets lost, IDLE %"PRIu64" times\n",
	       total, MAX_IDLE - timeout);
	/* clean up */
	total = pkt_per_port * conf->nb_ports - total;
	for (i = 0; i < total; i++)
		rte_pktmbuf_free(pkts_burst[i]);

	rte_free(pkts_burst);

	if (total > 0)
		return diff_tsc / total;
	else
		return -1;
}

static int
exec_burst(uint32_t flags, int lcore)
{
	unsigned i, portid, nb_tx = 0;
	struct lcore_conf *conf;
	uint32_t pkt_per_port;
	int num, idx = 0;
	int diff_tsc;

	conf = &lcore_conf[lcore];

	pkt_per_port = MAX_TRAFFIC_BURST;
	num = pkt_per_port * conf->nb_ports;

	rte_atomic64_init(&start);

	/* start polling thread, but not actually poll yet */
	rte_eal_remote_launch(poll_burst,
			      (void *)&pkt_per_port, lcore);

	/* Only when polling first */
	if (flags == SC_BURST_POLL_FIRST)
		rte_atomic64_set(&start, 1);

	/* start xmit */
	while (num) {
		nb_tx = RTE_MIN(MAX_PKT_BURST, num);
		for (i = 0; i < conf->nb_ports; i++) {
			portid = conf->portlist[i];
			nb_tx = rte_eth_tx_burst(portid, 0,
					 &tx_burst[idx], nb_tx);
			idx += nb_tx;
			num -= nb_tx;
		}

	}

	sleep(5);

	/* only when polling second  */
	if (flags == SC_BURST_XMIT_FIRST)
		rte_atomic64_set(&start, 1);

	/* wait for polling finished */
	diff_tsc = rte_eal_wait_lcore(lcore);
	if (diff_tsc < 0) {
		printf("exec_burst: Failed to measure cycles per packet\n");
		return -1;
	}

	printf("Result: %d cycles per packet\n", diff_tsc);

	return 0;
}

static int
test_pmd_perf(void)
{
	uint16_t nb_ports, num, nb_lcores, slave_id = (uint16_t)-1;
	uint16_t nb_rxd = MAX_TRAFFIC_BURST;
	uint16_t nb_txd = MAX_TRAFFIC_BURST;
	uint16_t portid;
	uint16_t nb_rx_queue = 1, nb_tx_queue = 1;
	int socketid = -1;
	int ret;

	printf("Start PMD RXTX cycles cost test.\n");

	signal(SIGUSR1, signal_handler);
	signal(SIGUSR2, signal_handler);

	nb_ports = rte_eth_dev_count_avail();
	if (nb_ports < NB_ETHPORTS_USED) {
		printf("At least %u port(s) used for perf. test\n",
		       NB_ETHPORTS_USED);
		return -1;
	}

	nb_lcores = rte_lcore_count();

	memset(lcore_conf, 0, sizeof(lcore_conf));
	init_lcores();

	init_mbufpool(NB_MBUF);

	if (sc_flag == SC_CONTINUOUS) {
		nb_rxd = RTE_TEST_RX_DESC_DEFAULT;
		nb_txd = RTE_TEST_TX_DESC_DEFAULT;
	}
	printf("CONFIG RXD=%d TXD=%d\n", nb_rxd, nb_txd);

	reset_count();
	num = 0;
	RTE_ETH_FOREACH_DEV(portid) {
		if (socketid == -1) {
			socketid = rte_eth_dev_socket_id(portid);
			slave_id = alloc_lcore(socketid);
			if (slave_id == (uint16_t)-1) {
				printf("No avail lcore to run test\n");
				return -1;
			}
			printf("Performance test runs on lcore %u socket %u\n",
			       slave_id, socketid);
		}

		if (socketid != rte_eth_dev_socket_id(portid)) {
			printf("Skip port %d\n", portid);
			continue;
		}

		/* port configure */
		ret = rte_eth_dev_configure(portid, nb_rx_queue,
					    nb_tx_queue, &port_conf);
		if (ret < 0)
			rte_exit(EXIT_FAILURE,
				"Cannot configure device: err=%d, port=%d\n",
				 ret, portid);

		ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
		if (ret < 0)
			rte_exit(EXIT_FAILURE,
				"Cannot get mac address: err=%d, port=%d\n",
				 ret, portid);

		printf("Port %u ", portid);
		print_ethaddr("Address:", &ports_eth_addr[portid]);
		printf("\n");

		/* tx queue setup */
		ret = rte_eth_tx_queue_setup(portid, 0, nb_txd,
					     socketid, &tx_conf);
		if (ret < 0)
			rte_exit(EXIT_FAILURE,
				"rte_eth_tx_queue_setup: err=%d, "
				"port=%d\n", ret, portid);

		/* rx queue steup */
		ret = rte_eth_rx_queue_setup(portid, 0, nb_rxd,
						socketid, &rx_conf,
						mbufpool[socketid]);
		if (ret < 0)
			rte_exit(EXIT_FAILURE, "rte_eth_rx_queue_setup: err=%d,"
				 "port=%d\n", ret, portid);

		/* Start device */
		stop = 0;
		ret = rte_eth_dev_start(portid);
		if (ret < 0)
			rte_exit(EXIT_FAILURE,
				"rte_eth_dev_start: err=%d, port=%d\n",
				ret, portid);

		/* always eanble promiscuous */
		ret = rte_eth_promiscuous_enable(portid);
		if (ret != 0)
			rte_exit(EXIT_FAILURE,
				 "rte_eth_promiscuous_enable: err=%s, port=%d\n",
				 rte_strerror(-ret), portid);

		lcore_conf[slave_id].portlist[num++] = portid;
		lcore_conf[slave_id].nb_ports++;
	}
	check_all_ports_link_status(nb_ports, RTE_PORT_ALL);

	if (tx_burst == NULL) {
		tx_burst = (struct rte_mbuf **)
			rte_calloc_socket("tx_buff",
					  MAX_TRAFFIC_BURST * nb_ports,
					  sizeof(void *),
					  RTE_CACHE_LINE_SIZE, socketid);
		if (!tx_burst)
			return -1;
	}

	init_traffic(mbufpool[socketid],
		     tx_burst, MAX_TRAFFIC_BURST * nb_ports);

	printf("Generate %d packets @socket %d\n",
	       MAX_TRAFFIC_BURST * nb_ports, socketid);

	if (sc_flag == SC_CONTINUOUS) {
		/* do both rxtx by default */
		if (NULL == do_measure)
			do_measure = measure_rxtx;

		rte_eal_remote_launch(main_loop, NULL, slave_id);

		if (rte_eal_wait_lcore(slave_id) < 0)
			return -1;
	} else if (sc_flag == SC_BURST_POLL_FIRST ||
		   sc_flag == SC_BURST_XMIT_FIRST)
		if (exec_burst(sc_flag, slave_id) < 0)
			return -1;

	/* port tear down */
	RTE_ETH_FOREACH_DEV(portid) {
		if (socketid != rte_eth_dev_socket_id(portid))
			continue;

		rte_eth_dev_stop(portid);
	}

	return 0;
}

int
test_set_rxtx_conf(cmdline_fixed_string_t mode)
{
	printf("mode switch to %s\n", mode);

	if (!strcmp(mode, "vector")) {
		/* vector rx, tx */
		tx_conf.tx_rs_thresh = 32;
		tx_conf.tx_free_thresh = 32;
		return 0;
	} else if (!strcmp(mode, "scalar")) {
		/* bulk alloc rx, full-featured tx */
		tx_conf.tx_rs_thresh = 32;
		tx_conf.tx_free_thresh = 32;
		port_conf.rxmode.offloads |= DEV_RX_OFFLOAD_CHECKSUM;
		return 0;
	} else if (!strcmp(mode, "hybrid")) {
		/* bulk alloc rx, vector tx
		 * when vec macro not define,
		 * using the same rx/tx as scalar
		 */
		tx_conf.tx_rs_thresh = 32;
		tx_conf.tx_free_thresh = 32;
		port_conf.rxmode.offloads |= DEV_RX_OFFLOAD_CHECKSUM;
		return 0;
	} else if (!strcmp(mode, "full")) {
		/* full feature rx,tx pair */
		tx_conf.tx_rs_thresh = 32;
		tx_conf.tx_free_thresh = 32;
		port_conf.rxmode.offloads |= DEV_RX_OFFLOAD_SCATTER;
		return 0;
	}

	return -1;
}

int
test_set_rxtx_anchor(cmdline_fixed_string_t type)
{
	printf("type switch to %s\n", type);

	if (!strcmp(type, "rxtx")) {
		do_measure = measure_rxtx;
		return 0;
	} else if (!strcmp(type, "rxonly")) {
		do_measure = measure_rxonly;
		return 0;
	} else if (!strcmp(type, "txonly")) {
		do_measure = measure_txonly;
		return 0;
	}

	return -1;
}

int
test_set_rxtx_sc(cmdline_fixed_string_t type)
{
	printf("stream control switch to %s\n", type);

	if (!strcmp(type, "continuous")) {
		sc_flag = SC_CONTINUOUS;
		return 0;
	} else if (!strcmp(type, "poll_before_xmit")) {
		sc_flag = SC_BURST_POLL_FIRST;
		return 0;
	} else if (!strcmp(type, "poll_after_xmit")) {
		sc_flag = SC_BURST_XMIT_FIRST;
		return 0;
	}

	return -1;
}

REGISTER_TEST_COMMAND(pmd_perf_autotest, test_pmd_perf);
12/05/2020 11:40:06              dut.10.240.183.61: sed -i -e 's/#define MAX_TRAFFIC_BURST              2048/#define MAX_TRAFFIC_BURST              32/' app/test/test_pmd_perf.c
12/05/2020 11:40:06              dut.10.240.183.61: 
12/05/2020 11:40:06              dut.10.240.183.61: cp app/test/test_pmd_perf.c /tmp/test_pmd_perf.c
12/05/2020 11:40:06              dut.10.240.183.61: 
12/05/2020 11:40:06          TestUnitTestsLoopback: Test Case test_link_mode Begin
12/05/2020 11:40:06              dut.10.240.183.61: 
12/05/2020 11:40:06                         tester: 
12/05/2020 11:40:06              dut.10.240.183.61: sed -i -e 's/lpbk_mode = 1/lpbk_mode = 0/' app/test/test_pmd_perf.c
12/05/2020 11:40:06              dut.10.240.183.61: 
12/05/2020 11:40:06              dut.10.240.183.61: sed -i -e '/check_all_ports_link_status(nb_ports, RTE_PORT_ALL);/a\        sleep(6);' app/test/test_pmd_perf.c
12/05/2020 11:40:06              dut.10.240.183.61: 
12/05/2020 11:40:06              dut.10.240.183.61: make -j 70 app/test_sub O=x86_64-native-linuxapp-gcc
12/05/2020 11:40:08              dut.10.240.183.61: app/test_sub
== Build app/test
  CC test_pmd_perf.o
  LD test
  INSTALL-APP test
  INSTALL-MAP test.map
12/05/2020 11:40:08                         tester: rm -rf ./getPackageByTcpdump.cap
12/05/2020 11:40:08                         tester: 
12/05/2020 11:40:08                         tester: tcpdump -i enp177s0f0 -w ./getPackageByTcpdump.cap 2> /dev/null& 
12/05/2020 11:40:08                         tester: [1] 210673
12/05/2020 11:40:08              dut.10.240.183.61: ./x86_64-native-linuxapp-gcc/app/test -l 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71 -n 4   --file-prefix=dpdk_210396_20200512113949  
12/05/2020 11:40:10              dut.10.240.183.61: EAL: Detected 72 lcore(s)
EAL: Detected 2 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/dpdk_210396_20200512113949/mp_socket
EAL: Selected IOVA mode 'VA'
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL:   using IOMMU type 1 (Type 1)
EAL: Probe PCI driver: net_i40e (8086:1583) device: 0000:af:00.0 (socket 1)
No telemetry legacy support - No legacy callbacks, legacy socket not created
APP: HPET is not enabled, using TSC as default timer
12/05/2020 11:40:10              dut.10.240.183.61: pmd_perf_autotest
12/05/2020 11:40:40              dut.10.240.183.61: pmd_perf_autotest
Start PMD RXTX cycles cost test.
Allocated mbuf pool on socket 0
Allocated mbuf pool on socket 1
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 18 socket 1
Port 0 Address:00:00:00:00:01:00
Checking link statuses...
Port0 Link Up. Speed 40000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 32 packets @socket 1
inject 32 packet to port 0
Total packets inject to prime ports = 32
Each port will do 59523809 packets per second
Test will stop after at least 119047618 packets received

12/05/2020 11:40:40              dut.10.240.183.61: kill_all: called by dut and prefix list has value.
12/05/2020 11:40:42              dut.10.240.183.61: Killed
[PEXPECT]# 
12/05/2020 11:40:42                         tester: killall tcpdump
12/05/2020 11:40:42                         tester: 
12/05/2020 11:40:42                         tester: tcpdump -nn -e -v -r ./getPackageByTcpdump.cap
12/05/2020 11:40:42                         tester: reading from file ./getPackageByTcpdump.cap, link-type EN10MB (Ethernet)
11:40:16.572505 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572519 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572522 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572526 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572529 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572532 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572535 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572538 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572542 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572545 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572548 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572551 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572555 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572558 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572561 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572564 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572567 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572570 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572573 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572577 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572580 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572583 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572588 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572591 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572594 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572597 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572600 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572604 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572607 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572611 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572614 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
11:40:16.572617 00:ff:aa:ff:aa:ff > 00:aa:ff:aa:ff:aa, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 46)
    10.0.0.1.0 > 10.0.0.2.0: UDP, length 18
[1]+  Done                    tcpdump -i enp177s0f0 -w ./getPackageByTcpdump.cap 2> /dev/null
12/05/2020 11:40:42          TestUnitTestsLoopback: Test Case test_link_mode Result PASSED:
12/05/2020 11:40:42              dut.10.240.183.61: cp /tmp/test_pmd_perf.c app/test/test_pmd_perf.c
12/05/2020 11:40:43              dut.10.240.183.61: 
12/05/2020 11:40:43              dut.10.240.183.61: kill_all: called by dut and has no prefix list.
12/05/2020 11:40:43          TestUnitTestsLoopback: Test Case test_loopback_mode Begin
12/05/2020 11:40:43              dut.10.240.183.61: 
12/05/2020 11:40:43                         tester:  
12/05/2020 11:40:43              dut.10.240.183.61: sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/' app/test/test_pmd_perf.c
12/05/2020 11:40:43              dut.10.240.183.61: 
12/05/2020 11:40:43              dut.10.240.183.61: make -j 70 app/test_sub O=x86_64-native-linuxapp-gcc
12/05/2020 11:40:45              dut.10.240.183.61: app/test_sub
== Build app/test
  CC test_pmd_perf.o
  LD test
  INSTALL-APP test
  INSTALL-MAP test.map
12/05/2020 11:40:45                         tester: rm -rf ./getPackageByTcpdump.cap
12/05/2020 11:40:46                         tester: 
12/05/2020 11:40:46                         tester: tcpdump -i enp177s0f0 ether[12:2] != '0x88cc' -w ./getPackageByTcpdump.cap 2> /dev/null& 
12/05/2020 11:40:46                         tester: [1] 210723
12/05/2020 11:40:46              dut.10.240.183.61: ./x86_64-native-linuxapp-gcc/app/test -l 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71 -n 4   --file-prefix=dpdk_210396_20200512113949  
12/05/2020 11:40:47              dut.10.240.183.61: EAL: Detected 72 lcore(s)
EAL: Detected 2 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/dpdk_210396_20200512113949/mp_socket
EAL: Selected IOVA mode 'VA'
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL:   using IOMMU type 1 (Type 1)
EAL: Probe PCI driver: net_i40e (8086:1583) device: 0000:af:00.0 (socket 1)
No telemetry legacy support - No legacy callbacks, legacy socket not created
APP: HPET is not enabled, using TSC as default timer
12/05/2020 11:40:47              dut.10.240.183.61: pmd_perf_autotest
12/05/2020 11:41:02              dut.10.240.183.61: pmd_perf_autotest
Start PMD RXTX cycles cost test.
Allocated mbuf pool on socket 0
Allocated mbuf pool on socket 1
CONFIG RXD=1024 TXD=1024
Performance test runs on lcore 18 socket 1
Port 0 Address:00:00:00:00:01:00
Checking link statuses...
Port0 Link Up. Speed 40000 Mbps - full-duplex
IPv4 pktlen 46
UDP pktlen 26
Generate 32 packets @socket 1
inject 32 packet to port 0
Total packets inject to prime ports = 32
Each port will do 59523809 packets per second
Test will stop after at least 119047618 packets received
free 32 (expected 32) mbuf left in port 0
119047620 packet, 0 drop, 562437813 idle
Result: 281 cycles per packet
Test OK
12/05/2020 11:41:02              dut.10.240.183.61: quit
12/05/2020 11:41:02              dut.10.240.183.61: quit
12/05/2020 11:41:02                         tester: killall tcpdump
12/05/2020 11:41:02                         tester: 
12/05/2020 11:41:02                         tester: tcpdump -nn -e -v -r ./getPackageByTcpdump.cap
12/05/2020 11:41:02                         tester: reading from file ./getPackageByTcpdump.cap, link-type EN10MB (Ethernet)
[1]+  Done                    tcpdump -i enp177s0f0 ether[12:2] != '0x88cc' -w ./getPackageByTcpdump.cap 2> /dev/null
12/05/2020 11:41:02          TestUnitTestsLoopback: Test Case test_loopback_mode Result PASSED:
12/05/2020 11:41:02              dut.10.240.183.61: cp /tmp/test_pmd_perf.c app/test/test_pmd_perf.c
12/05/2020 11:41:02              dut.10.240.183.61: 
12/05/2020 11:41:02              dut.10.240.183.61: kill_all: called by dut and prefix list has value.
12/05/2020 11:41:02                            dts: 
TEST SUITE ENDED: TestUnitTestsLoopback

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test
  2020-05-12  5:58 [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test Xiao Qimai
  2020-05-12  5:58 ` [dts] [PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update Xiao Qimai
  2020-05-12  6:11 ` [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test Xiao, QimaiX
@ 2020-06-02  5:47 ` Tu, Lijuan
  2 siblings, 0 replies; 5+ messages in thread
From: Tu, Lijuan @ 2020-06-02  5:47 UTC (permalink / raw)
  To: Xiao, QimaiX, dts; +Cc: Xiao, QimaiX

Applied, thanks

> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Xiao Qimai
> Sent: Tuesday, May 12, 2020 1:58 PM
> To: dts@dpdk.org
> Cc: Xiao, QimaiX <qimaix.xiao@intel.com>
> Subject: [dts] [PATCH V1]unit_tests_loopback: update compile cmd of
> app/test
> 
> *. update compile cmd of app/test according to dpdk's update
> 
> Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
> ---
>  tests/TestSuite_unit_tests_loopback.py | 24 +++++++++++++-----------
>  1 file changed, 13 insertions(+), 11 deletions(-)
> 
> diff --git a/tests/TestSuite_unit_tests_loopback.py
> b/tests/TestSuite_unit_tests_loopback.py
> index 68b1f30..c1d37b2 100644
> --- a/tests/TestSuite_unit_tests_loopback.py
> +++ b/tests/TestSuite_unit_tests_loopback.py
> @@ -70,6 +70,8 @@ class TestUnitTestsLoopback(TestCase):
>          self.verify(self.arch in ["x86_64", "arm64"], "pmd perf request running
> in x86_64 or arm64")
>          self.max_traffic_burst = self.get_max_traffic_burst()
>          self.dut.send_expect("sed -i -e 's/#define
> MAX_TRAFFIC_BURST              %s/#define MAX_TRAFFIC_BURST              32/'
> app/test/test_pmd_perf.c" % self.max_traffic_burst, "# ", 30)
> +        self.tmp_path = '/tmp/test_pmd_perf.c'
> +        self.dut.send_expect("cp app/test/test_pmd_perf.c %s" %
> + self.tmp_path, "# ")
> 
>      def set_up(self):
>          """
> @@ -90,14 +92,14 @@ class TestUnitTestsLoopback(TestCase):
>          Run pmd stream control mode burst test case.
>          """
>          self.dut.send_expect("sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/'
> app/test/test_pmd_perf.c", "# ", 30)
> -        out = self.dut.build_dpdk_apps('app/test')
> -        self.verify("Error" not in out, "Compilation error")
> +        out = self.dut.send_expect("make -j %s app/test_sub O=%s" %
> (self.dut.number_of_cores, self.target), "#")
> +        self.verify("Error" not in out, "compilation l3fwd-power
> + error")
>          self.verify("No such" not in out, "Compilation error")
> 
>          self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
> -        self.tester.send_expect("tcpdump -i %s -w ./getPackageByTcpdump.cap
> 2> /dev/null& " % self.tester_itf, "#")
> +        self.tester.send_expect("tcpdump -i %s ether[12:2] != '0x88cc'
> + -w ./getPackageByTcpdump.cap 2> /dev/null& " % self.tester_itf, "#")
>          eal_params = self.dut.create_eal_parameters(cores=self.cores)
> -        self.dut.send_expect("./app/test/test %s" % (eal_params),
> "R.*T.*E.*>.*>", 60)
> +        self.dut.send_expect("./%s/app/test %s" % (self.target,
> + eal_params), "R.*T.*E.*>.*>", 60)
>          out = self.dut.send_expect("pmd_perf_autotest", "RTE>>", 120)
>          print(out)
>          self.dut.send_expect("quit", "# ") @@ -113,14 +115,14 @@ class
> TestUnitTestsLoopback(TestCase):
>          """
>          self.dut.send_expect("sed -i -e 's/lpbk_mode = 1/lpbk_mode = 0/'
> app/test/test_pmd_perf.c", "# ", 30)
>          self.dut.send_expect("sed -i -e '/check_all_ports_link_status(nb_ports,
> RTE_PORT_ALL);/a\        sleep(6);' app/test/test_pmd_perf.c", "# ", 30)
> -        out = self.dut.build_dpdk_apps('app/test')
> -        self.verify("Error" not in out, "Compilation error")
> +        out = self.dut.send_expect("make -j %s app/test_sub O=%s" %
> (self.dut.number_of_cores, self.target), "#")
> +        self.verify("Error" not in out, "compilation l3fwd-power
> + error")
>          self.verify("No such" not in out, "Compilation error")
> 
>          self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
>          self.tester.send_expect("tcpdump -i %s -w ./getPackageByTcpdump.cap
> 2> /dev/null& " % self.tester_itf, "#")
>          eal_params = self.dut.create_eal_parameters(cores=self.cores)
> -        self.dut.send_expect("./app/test/test %s" % (eal_params),
> "R.*T.*E.*>.*>", 60)
> +        self.dut.send_expect("./%s/app/test %s" % (self.target,
> + eal_params), "R.*T.*E.*>.*>", 60)
>          self.dut.send_command("pmd_perf_autotest", 30)
>          # There is no packet loopback, so the test is hung.
>          # It needs to kill the process manually.
> @@ -133,16 +135,16 @@ class TestUnitTestsLoopback(TestCase):
>          """
>          Run after each test case.
>          """
> +        self.dut.send_expect("cp %s app/test/test_pmd_perf.c" %
> + self.tmp_path, "# ")
>          self.dut.kill_all()
> 
>      def tear_down_all(self):
>          """
>          Run after each test suite.
>          """
> -        self.dut.send_expect("sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/'
> app/test/test_pmd_perf.c", "# ", 30)
> -        self.dut.send_expect("sed -i -e '/sleep(6)/d' app/test/test_pmd_perf.c",
> "# ", 30)
> +        self.dut.send_expect("cp %s app/test/test_pmd_perf.c" %
> + self.tmp_path, "# ")
>          self.dut.send_expect("sed -i -e 's/#define MAX_TRAFFIC_BURST
> 32/#define MAX_TRAFFIC_BURST              %s/' app/test/test_pmd_perf.c" %
> self.max_traffic_burst, "# ", 30)
> -        out = self.dut.build_dpdk_apps('app/test')
> -        self.verify("Error" not in out, "Compilation error")
> +        out = self.dut.send_expect("make -j %s app/test_sub O=%s" %
> (self.dut.number_of_cores, self.target), "#")
> +        self.verify("Error" not in out, "compilation l3fwd-power
> + error")
>          self.verify("No such" not in out, "Compilation error")
>          self.dut.kill_all()
> --
> 1.8.3.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-06-02  5:49 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-12  5:58 [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test Xiao Qimai
2020-05-12  5:58 ` [dts] [PATCH V1 1/2]unit_tests_pmd_perf: change compile cmd of app/test according to dpdk's update Xiao Qimai
2020-05-12  6:09   ` Xiao, QimaiX
2020-05-12  6:11 ` [dts] [PATCH V1]unit_tests_loopback: update compile cmd of app/test Xiao, QimaiX
2020-06-02  5:47 ` Tu, Lijuan

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).