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")
Cc: stable@dpdk.org
Reported-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
Tested-by: Nikhil Rao <nikhil.rao@intel.com>
Tested-by: Bruce Richardson <bruce.richardson@intel.com>
SRCS-y += test_service_cores.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_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
SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) += test_cmdline.c
SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) += test_cmdline_num.c
SRCS-$(CONFIG_RTE_LIBRTE_REORDER) += test_reorder.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 += 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)
SRCS-$(CONFIG_RTE_LIBRTE_ACL) += test_acl.c
ifeq ($(CONFIG_RTE_LIBRTE_PMD_RING),y)
SRCS-y += test_eventdev.c
SRCS-y += test_event_ring.c
SRCS-y += test_event_eth_rx_adapter.c
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
SRCS-y += test_event_timer_adapter.c
SRCS-y += test_event_crypto_adapter.c
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)
ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y)
ifeq ($(CONFIG_RTE_LIBRTE_PMD_BOND),y)
test_sources = files('commands.c',
'packet_burst_generator.c',
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.c',
'test_acl.c',
'test_alarm.c',
'test_atomic.c',
'test_barrier.c',
'test_bpf.c',
'test_byteorder.c',
'test_cmdline.c',
'test_bpf.c',
'test_byteorder.c',
'test_cmdline.c',
'test_event_crypto_adapter.c',
'test_event_eth_rx_adapter.c',
'test_event_ring.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',
'test_event_timer_adapter.c',
'test_eventdev.c',
'test_external_mem.c',
'test_ipsec_sad.c',
'test_kni.c',
'test_kvargs.c',
'test_ipsec_sad.c',
'test_kni.c',
'test_kvargs.c',
- 'test_link_bonding_mode4.c',
'test_link_bonding_rssconf.c',
'test_logs.c',
'test_lpm.c',
'test_link_bonding_rssconf.c',
'test_logs.c',
'test_lpm.c',
'test_metrics.c',
'test_mcslock.c',
'test_mp_secondary.c',
'test_metrics.c',
'test_mcslock.c',
'test_mp_secondary.c',
'test_per_lcore.c',
'test_pmd_perf.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',
'test_power.c',
'test_power_cpufreq.c',
'test_power_kvm_vm.c',
'rib_autotest',
'rib6_autotest',
'ring_autotest',
'rib_autotest',
'rib6_autotest',
'ring_autotest',
'rwlock_test1_autotest',
'rwlock_rda_autotest',
'rwlock_rds_wrm_autotest',
'rwlock_test1_autotest',
'rwlock_rda_autotest',
'rwlock_rds_wrm_autotest',
'timer_autotest',
'user_delay_us',
'version_autotest',
'timer_autotest',
'user_delay_us',
'version_autotest',
- 'bitratestats_autotest',
'crc_autotest',
'delay_us_sleep_autotest',
'distributor_autotest',
'crc_autotest',
'delay_us_sleep_autotest',
'distributor_autotest',
'ipsec_autotest',
'kni_autotest',
'kvargs_autotest',
'ipsec_autotest',
'kni_autotest',
'kvargs_autotest',
- 'latencystats_autotest',
'member_autotest',
'metrics_autotest',
'member_autotest',
'metrics_autotest',
'power_cpufreq_autotest',
'power_autotest',
'power_kvm_vm_autotest',
'power_cpufreq_autotest',
'power_autotest',
'power_kvm_vm_autotest',
'rcu_qsbr_perf_autotest',
'red_perf',
'distributor_perf_autotest',
'rcu_qsbr_perf_autotest',
'red_perf',
'distributor_perf_autotest',
- 'ring_pmd_perf_autotest',
'pmd_perf_autotest',
'stack_perf_autotest',
'stack_lf_perf_autotest',
'pmd_perf_autotest',
'stack_perf_autotest',
'stack_lf_perf_autotest',
'eventdev_selftest_octeontx',
'eventdev_selftest_sw',
'link_bonding_autotest',
'eventdev_selftest_octeontx',
'eventdev_selftest_sw',
'link_bonding_autotest',
- 'link_bonding_mode4_autotest',
'link_bonding_rssconf_autotest',
'rawdev_autotest',
]
'link_bonding_rssconf_autotest',
'rawdev_autotest',
]
endif
if dpdk_conf.has('RTE_LIBRTE_RING_PMD')
test_deps += 'pmd_ring'
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')
endif
if dpdk_conf.has('RTE_LIBRTE_POWER')
num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()
test_args = [num_cores_arg]
num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()
test_args = [num_cores_arg]
foreach arg : fast_test_names
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],
if host_machine.system() == 'linux'
test(arg, dpdk_test,
env : ['DPDK_TEST=' + arg],
#endif
#ifdef RTE_LIBRTE_PDUMP
#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
#include <pthread.h>
extern void *send_pkts(void *empty);
extern uint16_t flag_for_send_pkts;
#endif
/*
* launches a second copy of the test process using the given argv parameters,
/*
* launches a second copy of the test process using the given argv parameters,
int i, status;
char path[32];
#ifdef RTE_LIBRTE_PDUMP
int i, status;
char path[32];
#ifdef RTE_LIBRTE_PDUMP
+#ifdef RTE_LIBRTE_RING_PMD
#endif
pid_t pid = fork();
#endif
pid_t pid = fork();
}
/* parent process does a wait */
#ifdef RTE_LIBRTE_PDUMP
}
/* 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);
if ((strcmp(env_value, "run_pdump_server_tests") == 0))
pthread_create(&thread, NULL, &send_pkts, NULL);
#endif
while (wait(&status) != pid)
;
#ifdef RTE_LIBRTE_PDUMP
#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);
}
if ((strcmp(env_value, "run_pdump_server_tests") == 0)) {
flag_for_send_pkts = 0;
pthread_join(thread, NULL);
}
} actions[] = {
{ "run_secondary_instances", test_mp_secondary },
#ifdef RTE_LIBRTE_PDUMP
} actions[] = {
{ "run_secondary_instances", test_mp_secondary },
#ifdef RTE_LIBRTE_PDUMP
+#ifdef RTE_LIBRTE_RING_PMD
{ "run_pdump_server_tests", test_pdump },
{ "run_pdump_server_tests", test_pdump },
#endif
{ "test_missing_c_flag", no_action },
{ "test_master_lcore_flag", no_action },
#endif
{ "test_missing_c_flag", no_action },
{ "test_master_lcore_flag", no_action },