[dpdk-stable] patch 'test: fix build without ring PMD' has been queued to stable release 19.11.1

luca.boccassi at gmail.com luca.boccassi at gmail.com
Mon Feb 17 18:45:44 CET 2020


Hi,

FYI, your patch has been queued to stable release 19.11.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/19/20. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Thanks.

Luca Boccassi

---
>From 78142a53ec956c93297bf7fb4e0c0224a4614803 Mon Sep 17 00:00:00 2001
From: Reshma Pattan <reshma.pattan at intel.com>
Date: Mon, 23 Dec 2019 06:53:05 +0000
Subject: [PATCH] test: fix build without ring PMD

[ upstream commit 207b1c813f39b1622268d7eab819737458839a67 ]

Some unit tests has dependency on RING PMD,
so this patch is trying to fix those and other
closely related issues.

1)pdump, latency, bitrate, ring PMD and test_event_eth_tx_adapter
unit tests are dependent on ring PMD, so compile those
tests only when ring PMD is enabled else ignore.

2)get rid of make file error which was added by bond unit test
for ring PMD disabled case which is not necessary.

3)Tx adapter UT is dependent on RING PMD, but it was
observed that it was missing from the run in meson
build, so added it. TX adapter UT uses 'sw event and
'null' pmd drivers, so for shared builds the drivers .so
path has to be passed to the test args of meson UT run.

Fixes: 086eb64db3 ("test/pdump: add unit test for pdump library")
Fixes: fdeb30fa71 ("test/bitrate: add unit tests for bitrate library")
Fixes: 1e3676a06e ("test/latency: add unit tests for latencystats library")
Fixes: 46cf97e4bb ("eventdev: add test for eth Tx adapter")
Fixes: d23e09e0ef ("app/test: link with ring pmd when needed")

Reported-by: Stephen Hemminger <stephen at networkplumber.org>
Signed-off-by: Reshma Pattan <reshma.pattan at intel.com>
Tested-by: Nikhil Rao <nikhil.rao at intel.com>
Tested-by: Bruce Richardson <bruce.richardson at intel.com>
---
 app/test/Makefile    | 16 +++++-----------
 app/test/meson.build | 36 ++++++++++++++++++++++--------------
 app/test/process.h   |  8 ++++++++
 app/test/test.c      |  2 ++
 4 files changed, 37 insertions(+), 25 deletions(-)

diff --git a/app/test/Makefile b/app/test/Makefile
index 57930c00b1..1ee1550094 100644
--- a/app/test/Makefile
+++ b/app/test/Makefile
@@ -151,8 +151,12 @@ SRCS-y += test_func_reentrancy.c
 
 SRCS-y += test_service_cores.c
 
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_RING),y)
+SRCS-y += sample_packet_forward.c
 SRCS-$(CONFIG_RTE_LIBRTE_BITRATE) += test_bitratestats.c
 SRCS-$(CONFIG_RTE_LIBRTE_LATENCY_STATS) += test_latencystats.c
+SRCS-$(CONFIG_RTE_LIBRTE_PDUMP) += test_pdump.c
+endif
 
 SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) += test_cmdline.c
 SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) += test_cmdline_num.c
@@ -181,11 +185,8 @@ SRCS-$(CONFIG_RTE_LIBRTE_DISTRIBUTOR) += test_distributor_perf.c
 
 SRCS-$(CONFIG_RTE_LIBRTE_REORDER) += test_reorder.c
 
-SRCS-$(CONFIG_RTE_LIBRTE_PDUMP) += test_pdump.c
-
 SRCS-y += virtual_pmd.c
 SRCS-y += packet_burst_generator.c
-SRCS-y += sample_packet_forward.c
 SRCS-$(CONFIG_RTE_LIBRTE_ACL) += test_acl.c
 
 ifeq ($(CONFIG_RTE_LIBRTE_PMD_RING),y)
@@ -215,7 +216,7 @@ ifeq ($(CONFIG_RTE_LIBRTE_EVENTDEV),y)
 SRCS-y += test_eventdev.c
 SRCS-y += test_event_ring.c
 SRCS-y += test_event_eth_rx_adapter.c
-SRCS-y += test_event_eth_tx_adapter.c
+SRCS-$(CONFIG_RTE_LIBRTE_PMD_RING) += test_event_eth_tx_adapter.c
 SRCS-y += test_event_timer_adapter.c
 SRCS-y += test_event_crypto_adapter.c
 endif
@@ -268,13 +269,6 @@ endif
 endif
 endif
 
-# Link against shared libraries when needed
-ifeq ($(CONFIG_RTE_LIBRTE_PMD_BOND),y)
-ifneq ($(CONFIG_RTE_LIBRTE_PMD_RING),y)
-$(error Link bonding tests require CONFIG_RTE_LIBRTE_PMD_RING=y)
-endif
-endif
-
 ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y)
 
 ifeq ($(CONFIG_RTE_LIBRTE_PMD_BOND),y)
diff --git a/app/test/meson.build b/app/test/meson.build
index 22b0cefaa3..8cb90c4993 100644
--- a/app/test/meson.build
+++ b/app/test/meson.build
@@ -7,13 +7,11 @@ endif
 
 test_sources = files('commands.c',
 	'packet_burst_generator.c',
-	'sample_packet_forward.c',
 	'test.c',
 	'test_acl.c',
 	'test_alarm.c',
 	'test_atomic.c',
 	'test_barrier.c',
-	'test_bitratestats.c',
 	'test_bpf.c',
 	'test_byteorder.c',
 	'test_cmdline.c',
@@ -43,7 +41,6 @@ test_sources = files('commands.c',
 	'test_event_crypto_adapter.c',
 	'test_event_eth_rx_adapter.c',
 	'test_event_ring.c',
-	'test_event_eth_tx_adapter.c',
 	'test_event_timer_adapter.c',
 	'test_eventdev.c',
 	'test_external_mem.c',
@@ -65,9 +62,7 @@ test_sources = files('commands.c',
 	'test_ipsec_sad.c',
 	'test_kni.c',
 	'test_kvargs.c',
-	'test_latencystats.c',
 	'test_link_bonding.c',
-	'test_link_bonding_mode4.c',
 	'test_link_bonding_rssconf.c',
 	'test_logs.c',
 	'test_lpm.c',
@@ -88,11 +83,8 @@ test_sources = files('commands.c',
 	'test_metrics.c',
 	'test_mcslock.c',
 	'test_mp_secondary.c',
-	'test_pdump.c',
 	'test_per_lcore.c',
 	'test_pmd_perf.c',
-	'test_pmd_ring.c',
-	'test_pmd_ring_perf.c',
 	'test_power.c',
 	'test_power_cpufreq.c',
 	'test_power_kvm_vm.c',
@@ -212,7 +204,6 @@ fast_test_names = [
         'rib_autotest',
         'rib6_autotest',
         'ring_autotest',
-        'ring_pmd_autotest',
         'rwlock_test1_autotest',
         'rwlock_rda_autotest',
         'rwlock_rds_wrm_autotest',
@@ -227,7 +218,6 @@ fast_test_names = [
         'timer_autotest',
         'user_delay_us',
         'version_autotest',
-        'bitratestats_autotest',
         'crc_autotest',
         'delay_us_sleep_autotest',
         'distributor_autotest',
@@ -238,10 +228,8 @@ fast_test_names = [
         'ipsec_autotest',
         'kni_autotest',
         'kvargs_autotest',
-        'latencystats_autotest',
         'member_autotest',
         'metrics_autotest',
-        'pdump_autotest',
         'power_cpufreq_autotest',
         'power_autotest',
         'power_kvm_vm_autotest',
@@ -277,7 +265,6 @@ perf_test_names = [
         'rcu_qsbr_perf_autotest',
         'red_perf',
         'distributor_perf_autotest',
-        'ring_pmd_perf_autotest',
         'pmd_perf_autotest',
         'stack_perf_autotest',
         'stack_lf_perf_autotest',
@@ -302,7 +289,6 @@ driver_test_names = [
         'eventdev_selftest_octeontx',
         'eventdev_selftest_sw',
         'link_bonding_autotest',
-        'link_bonding_mode4_autotest',
         'link_bonding_rssconf_autotest',
         'rawdev_autotest',
 ]
@@ -339,6 +325,21 @@ if dpdk_conf.has('RTE_LIBRTE_BOND_PMD')
 endif
 if dpdk_conf.has('RTE_LIBRTE_RING_PMD')
 	test_deps += 'pmd_ring'
+	test_sources += 'test_pmd_ring_perf.c'
+	test_sources += 'test_pmd_ring.c'
+	test_sources += 'test_event_eth_tx_adapter.c'
+	test_sources += 'test_bitratestats.c'
+	test_sources += 'test_latencystats.c'
+	test_sources += 'test_link_bonding_mode4.c'
+	test_sources += 'sample_packet_forward.c'
+	test_sources += 'test_pdump.c'
+	fast_test_names += 'ring_pmd_autotest'
+	perf_test_names += 'ring_pmd_perf_autotest'
+	fast_test_names += 'event_eth_tx_adapter_autotest'
+	fast_test_names += 'bitratestats_autotest'
+	fast_test_names += 'latencystats_autotest'
+	driver_test_names += 'link_bonding_mode4_autotest'
+	fast_test_names += 'pdump_autotest'
 endif
 
 if dpdk_conf.has('RTE_LIBRTE_POWER')
@@ -402,7 +403,14 @@ get_coremask = find_program('get-coremask.sh')
 num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()
 
 test_args = [num_cores_arg]
+
 foreach arg : fast_test_names
+	if (get_option('default_library') == 'shared' and
+		arg == 'event_eth_tx_adapter_autotest')
+		foreach drv:dpdk_drivers
+			test_args += ['-d', drv.full_path().split('.a')[0] + '.so']
+		endforeach
+	endif
 	if host_machine.system() == 'linux'
 		test(arg, dpdk_test,
 			  env : ['DPDK_TEST=' + arg],
diff --git a/app/test/process.h b/app/test/process.h
index 191d2796a9..c3b3780337 100644
--- a/app/test/process.h
+++ b/app/test/process.h
@@ -25,10 +25,12 @@
 #endif
 
 #ifdef RTE_LIBRTE_PDUMP
+#ifdef RTE_LIBRTE_RING_PMD
 #include <pthread.h>
 extern void *send_pkts(void *empty);
 extern uint16_t flag_for_send_pkts;
 #endif
+#endif
 
 /*
  * launches a second copy of the test process using the given argv parameters,
@@ -44,7 +46,9 @@ process_dup(const char *const argv[], int numargs, const char *env_value)
 	int i, status;
 	char path[32];
 #ifdef RTE_LIBRTE_PDUMP
+#ifdef RTE_LIBRTE_RING_PMD
 	pthread_t thread;
+#endif
 #endif
 
 	pid_t pid = fork();
@@ -121,17 +125,21 @@ process_dup(const char *const argv[], int numargs, const char *env_value)
 	}
 	/* parent process does a wait */
 #ifdef RTE_LIBRTE_PDUMP
+#ifdef RTE_LIBRTE_RING_PMD
 	if ((strcmp(env_value, "run_pdump_server_tests") == 0))
 		pthread_create(&thread, NULL, &send_pkts, NULL);
+#endif
 #endif
 
 	while (wait(&status) != pid)
 		;
 #ifdef RTE_LIBRTE_PDUMP
+#ifdef RTE_LIBRTE_RING_PMD
 	if ((strcmp(env_value, "run_pdump_server_tests") == 0)) {
 		flag_for_send_pkts = 0;
 		pthread_join(thread, NULL);
 	}
+#endif
 #endif
 	return status;
 }
diff --git a/app/test/test.c b/app/test/test.c
index cd7aaf645f..d0826ca69e 100644
--- a/app/test/test.c
+++ b/app/test/test.c
@@ -53,7 +53,9 @@ do_recursive_call(void)
 	} actions[] =  {
 			{ "run_secondary_instances", test_mp_secondary },
 #ifdef RTE_LIBRTE_PDUMP
+#ifdef RTE_LIBRTE_RING_PMD
 			{ "run_pdump_server_tests", test_pdump },
+#endif
 #endif
 			{ "test_missing_c_flag", no_action },
 			{ "test_master_lcore_flag", no_action },
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-02-17 17:00:16.753506226 +0000
+++ 0052-test-fix-build-without-ring-PMD.patch	2020-02-17 17:00:15.379951475 +0000
@@ -1,8 +1,10 @@
-From 207b1c813f39b1622268d7eab819737458839a67 Mon Sep 17 00:00:00 2001
+From 78142a53ec956c93297bf7fb4e0c0224a4614803 Mon Sep 17 00:00:00 2001
 From: Reshma Pattan <reshma.pattan at intel.com>
 Date: Mon, 23 Dec 2019 06:53:05 +0000
 Subject: [PATCH] test: fix build without ring PMD
 
+[ upstream commit 207b1c813f39b1622268d7eab819737458839a67 ]
+
 Some unit tests has dependency on RING PMD,
 so this patch is trying to fix those and other
 closely related issues.
@@ -25,7 +27,6 @@
 Fixes: 1e3676a06e ("test/latency: add unit tests for latencystats library")
 Fixes: 46cf97e4bb ("eventdev: add test for eth Tx adapter")
 Fixes: d23e09e0ef ("app/test: link with ring pmd when needed")
-Cc: stable at dpdk.org
 
 Reported-by: Stephen Hemminger <stephen at networkplumber.org>
 Signed-off-by: Reshma Pattan <reshma.pattan at intel.com>
@@ -39,7 +40,7 @@
  4 files changed, 37 insertions(+), 25 deletions(-)
 
 diff --git a/app/test/Makefile b/app/test/Makefile
-index b9bb3a74b2..1f080d1626 100644
+index 57930c00b1..1ee1550094 100644
 --- a/app/test/Makefile
 +++ b/app/test/Makefile
 @@ -151,8 +151,12 @@ SRCS-y += test_func_reentrancy.c
@@ -76,7 +77,7 @@
  SRCS-y += test_event_timer_adapter.c
  SRCS-y += test_event_crypto_adapter.c
  endif
-@@ -261,13 +262,6 @@ CFLAGS_test_memcpy_perf.o += -fno-var-tracking-assignments
+@@ -268,13 +269,6 @@ endif
  endif
  endif
  
@@ -91,7 +92,7 @@
  
  ifeq ($(CONFIG_RTE_LIBRTE_PMD_BOND),y)
 diff --git a/app/test/meson.build b/app/test/meson.build
-index 3675ffb5c5..0a2ce710f0 100644
+index 22b0cefaa3..8cb90c4993 100644
 --- a/app/test/meson.build
 +++ b/app/test/meson.build
 @@ -7,13 +7,11 @@ endif
@@ -154,7 +155,7 @@
          'crc_autotest',
          'delay_us_sleep_autotest',
          'distributor_autotest',
-@@ -237,10 +227,8 @@ fast_test_names = [
+@@ -238,10 +228,8 @@ fast_test_names = [
          'ipsec_autotest',
          'kni_autotest',
          'kvargs_autotest',
@@ -165,7 +166,7 @@
          'power_cpufreq_autotest',
          'power_autotest',
          'power_kvm_vm_autotest',
-@@ -276,7 +264,6 @@ perf_test_names = [
+@@ -277,7 +265,6 @@ perf_test_names = [
          'rcu_qsbr_perf_autotest',
          'red_perf',
          'distributor_perf_autotest',
@@ -173,7 +174,7 @@
          'pmd_perf_autotest',
          'stack_perf_autotest',
          'stack_lf_perf_autotest',
-@@ -303,7 +290,6 @@ driver_test_names = [
+@@ -302,7 +289,6 @@ driver_test_names = [
          'eventdev_selftest_octeontx',
          'eventdev_selftest_sw',
          'link_bonding_autotest',
@@ -181,7 +182,7 @@
          'link_bonding_rssconf_autotest',
          'rawdev_autotest',
  ]
-@@ -340,6 +326,21 @@ if dpdk_conf.has('RTE_LIBRTE_BOND_PMD')
+@@ -339,6 +325,21 @@ if dpdk_conf.has('RTE_LIBRTE_BOND_PMD')
  endif
  if dpdk_conf.has('RTE_LIBRTE_RING_PMD')
  	test_deps += 'pmd_ring'
@@ -203,7 +204,7 @@
  endif
  
  if dpdk_conf.has('RTE_LIBRTE_POWER')
-@@ -403,7 +404,14 @@ get_coremask = find_program('get-coremask.sh')
+@@ -402,7 +403,14 @@ get_coremask = find_program('get-coremask.sh')
  num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()
  
  test_args = [num_cores_arg]
@@ -268,7 +269,7 @@
  	return status;
  }
 diff --git a/app/test/test.c b/app/test/test.c
-index 7845350957..94d26ab1f6 100644
+index cd7aaf645f..d0826ca69e 100644
 --- a/app/test/test.c
 +++ b/app/test/test.c
 @@ -53,7 +53,9 @@ do_recursive_call(void)


More information about the stable mailing list