2017-12-20 11:16:32 +00:00
|
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
# Copyright(c) 2017 Intel Corporation
|
|
|
|
|
2019-05-30 15:38:36 +03:00
|
|
|
if not get_option('tests')
|
|
|
|
subdir_done()
|
|
|
|
endif
|
|
|
|
|
2017-12-20 11:16:32 +00:00
|
|
|
test_sources = files('commands.c',
|
|
|
|
'packet_burst_generator.c',
|
|
|
|
'test.c',
|
|
|
|
'test_acl.c',
|
|
|
|
'test_alarm.c',
|
|
|
|
'test_atomic.c',
|
2018-01-30 14:41:26 +00:00
|
|
|
'test_barrier.c',
|
2020-04-27 15:58:52 +08:00
|
|
|
'test_bitops.c',
|
2018-05-10 11:23:10 +01:00
|
|
|
'test_bpf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_byteorder.c',
|
|
|
|
'test_cmdline.c',
|
|
|
|
'test_cmdline_cirbuf.c',
|
|
|
|
'test_cmdline_etheraddr.c',
|
|
|
|
'test_cmdline_ipaddr.c',
|
|
|
|
'test_cmdline_lib.c',
|
|
|
|
'test_cmdline_num.c',
|
|
|
|
'test_cmdline_portlist.c',
|
|
|
|
'test_cmdline_string.c',
|
|
|
|
'test_common.c',
|
|
|
|
'test_cpuflags.c',
|
|
|
|
'test_crc.c',
|
2017-12-20 12:06:21 +00:00
|
|
|
'test_cryptodev.c',
|
2018-07-10 21:31:30 +05:30
|
|
|
'test_cryptodev_asym.c',
|
2017-12-20 12:06:21 +00:00
|
|
|
'test_cryptodev_blockcipher.c',
|
test/crypto: add PDCP C-Plane encap cases
PDCP control plane can support 5 bit and 12 bit
sequence number. This patch add test cases and test
vectors for all supported algo combinations of cipher+integrity
(NULL+NULL, NULL+AES, NULL+SNOW, NULL+ZUC,
AES+NULL, AES+SNOW, AES+AES, AES+ZUC,
SNOW+NULL, SNOW+AES, SNOW+SNOW, SNOW+ZUC,
ZUC+NULL, ZUC+AES, ZUC+SNOW, ZUC+ZUC).
The test cases are added in DPAA_SEC and DPAA2_SEC
test suite as a reference.
Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Nipun Gupta <nipun.gupta@nxp.com>
2019-10-01 00:57:40 +05:30
|
|
|
'test_cryptodev_security_pdcp.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_cycles.c',
|
|
|
|
'test_debug.c',
|
|
|
|
'test_distributor.c',
|
|
|
|
'test_distributor_perf.c',
|
|
|
|
'test_eal_flags.c',
|
|
|
|
'test_eal_fs.c',
|
|
|
|
'test_efd.c',
|
|
|
|
'test_efd_perf.c',
|
|
|
|
'test_errno.c',
|
2020-09-15 22:06:57 +03:00
|
|
|
'test_ethdev_link.c',
|
2018-09-27 11:16:15 +05:30
|
|
|
'test_event_crypto_adapter.c',
|
|
|
|
'test_event_eth_rx_adapter.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_event_ring.c',
|
2018-09-27 11:16:15 +05:30
|
|
|
'test_event_timer_adapter.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_eventdev.c',
|
2018-12-05 16:25:48 +00:00
|
|
|
'test_external_mem.c',
|
2018-12-05 16:26:00 +00:00
|
|
|
'test_fbarray.c',
|
2019-11-01 15:21:42 +00:00
|
|
|
'test_fib.c',
|
2019-11-01 15:21:44 +00:00
|
|
|
'test_fib_perf.c',
|
2019-11-01 15:21:43 +00:00
|
|
|
'test_fib6.c',
|
2019-11-01 15:21:45 +00:00
|
|
|
'test_fib6_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_func_reentrancy.c',
|
2017-12-20 12:06:21 +00:00
|
|
|
'test_flow_classify.c',
|
2020-04-11 19:44:12 +05:30
|
|
|
'test_graph.c',
|
2020-04-11 19:44:13 +05:30
|
|
|
'test_graph_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_hash.c',
|
|
|
|
'test_hash_functions.c',
|
|
|
|
'test_hash_multiwriter.c',
|
2018-09-28 07:11:08 -07:00
|
|
|
'test_hash_readwrite.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_hash_perf.c',
|
2020-02-03 13:49:11 -06:00
|
|
|
'test_hash_readwrite_lf_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_interrupts.c',
|
2020-04-20 15:25:23 -04:00
|
|
|
'test_ipfrag.c',
|
2019-01-10 21:06:33 +00:00
|
|
|
'test_ipsec.c',
|
2019-10-21 15:35:45 +01:00
|
|
|
'test_ipsec_sad.c',
|
2020-04-23 16:25:04 +01:00
|
|
|
'test_ipsec_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_kni.c',
|
|
|
|
'test_kvargs.c',
|
2020-07-06 22:52:30 +02:00
|
|
|
'test_lcores.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_logs.c',
|
|
|
|
'test_lpm.c',
|
|
|
|
'test_lpm6.c',
|
|
|
|
'test_lpm6_perf.c',
|
|
|
|
'test_lpm_perf.c',
|
|
|
|
'test_malloc.c',
|
|
|
|
'test_mbuf.c',
|
2017-12-20 12:06:21 +00:00
|
|
|
'test_member.c',
|
|
|
|
'test_member_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_memcpy.c',
|
|
|
|
'test_memcpy_perf.c',
|
|
|
|
'test_memory.c',
|
|
|
|
'test_mempool.c',
|
|
|
|
'test_mempool_perf.c',
|
|
|
|
'test_memzone.c',
|
|
|
|
'test_meter.c',
|
2018-10-08 14:01:27 +01:00
|
|
|
'test_metrics.c',
|
2019-07-05 18:27:08 +08:00
|
|
|
'test_mcslock.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_mp_secondary.c',
|
|
|
|
'test_per_lcore.c',
|
|
|
|
'test_pmd_perf.c',
|
|
|
|
'test_power.c',
|
2019-04-03 12:32:54 +02:00
|
|
|
'test_power_cpufreq.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_power_kvm_vm.c',
|
|
|
|
'test_prefetch.c',
|
2019-06-28 11:01:20 +02:00
|
|
|
'test_rand_perf.c',
|
2019-07-02 10:56:06 +01:00
|
|
|
'test_rawdev.c',
|
2019-04-30 22:54:17 -05:00
|
|
|
'test_rcu_qsbr.c',
|
|
|
|
'test_rcu_qsbr_perf.c',
|
2018-01-30 14:41:26 +00:00
|
|
|
'test_reciprocal_division.c',
|
|
|
|
'test_reciprocal_division_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_red.c',
|
|
|
|
'test_reorder.c',
|
2019-11-01 15:21:35 +00:00
|
|
|
'test_rib.c',
|
2019-11-01 15:21:37 +00:00
|
|
|
'test_rib6.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_ring.c',
|
2020-04-20 13:28:22 +01:00
|
|
|
'test_ring_mpmc_stress.c',
|
2020-04-20 13:28:27 +01:00
|
|
|
'test_ring_hts_stress.c',
|
2020-07-02 15:10:27 +01:00
|
|
|
'test_ring_mt_peek_stress.c',
|
2020-10-25 00:45:52 -05:00
|
|
|
'test_ring_mt_peek_stress_zc.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_ring_perf.c',
|
2020-04-20 13:28:25 +01:00
|
|
|
'test_ring_rts_stress.c',
|
2020-07-02 15:10:26 +01:00
|
|
|
'test_ring_st_peek_stress.c',
|
2020-10-25 00:45:52 -05:00
|
|
|
'test_ring_st_peek_stress_zc.c',
|
2020-04-20 13:28:22 +01:00
|
|
|
'test_ring_stress.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_rwlock.c',
|
|
|
|
'test_sched.c',
|
2020-04-09 19:24:54 +02:00
|
|
|
'test_security.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_service_cores.c',
|
|
|
|
'test_spinlock.c',
|
2019-04-03 18:20:15 -05:00
|
|
|
'test_stack.c',
|
2019-04-03 18:20:16 -05:00
|
|
|
'test_stack_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_string_fns.c',
|
|
|
|
'test_table.c',
|
|
|
|
'test_table_acl.c',
|
|
|
|
'test_table_combined.c',
|
|
|
|
'test_table_pipeline.c',
|
|
|
|
'test_table_ports.c',
|
|
|
|
'test_table_tables.c',
|
|
|
|
'test_tailq.c',
|
|
|
|
'test_thash.c',
|
|
|
|
'test_timer.c',
|
|
|
|
'test_timer_perf.c',
|
|
|
|
'test_timer_racecond.c',
|
2019-04-18 16:00:04 -05:00
|
|
|
'test_timer_secondary.c',
|
2019-03-25 19:11:09 +08:00
|
|
|
'test_ticketlock.c',
|
2020-04-23 00:33:43 +05:30
|
|
|
'test_trace.c',
|
|
|
|
'test_trace_register.c',
|
2020-04-23 00:33:44 +05:30
|
|
|
'test_trace_perf.c',
|
2017-12-20 11:16:32 +00:00
|
|
|
'test_version.c',
|
|
|
|
'virtual_pmd.c'
|
|
|
|
)
|
|
|
|
|
|
|
|
test_deps = ['acl',
|
test/bonding: allow disabling driver
The autotest application build was partially enabled for building with
the net/bond driver disabled, but a number of items were missed, leading
to build errors when the driver was disabled, e.g. by simply doing
"-Ddisable_drivers=net/*" when calling meson.
../app/test/test_link_bonding.c:25:10: fatal error: rte_eth_bond.h: \
No such file or directory
With this fix in place, it's possible to build DPDK with meson with all
non-bus, non-mempool drivers disabled i.e. using meson option
-Ddisable_drivers=baseband/*,compress/*,crypto/*,event/*,net/*,raw/*,vdpa/*
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
Tested-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
2020-05-01 16:05:49 +01:00
|
|
|
'bus_pci',
|
|
|
|
'bus_vdev',
|
2018-10-08 13:12:45 +01:00
|
|
|
'bitratestats',
|
2018-05-10 11:23:10 +01:00
|
|
|
'bpf',
|
2017-12-20 11:16:32 +00:00
|
|
|
'cfgfile',
|
|
|
|
'cmdline',
|
|
|
|
'cryptodev',
|
|
|
|
'distributor',
|
|
|
|
'efd',
|
|
|
|
'ethdev',
|
|
|
|
'eventdev',
|
2019-11-01 15:21:42 +00:00
|
|
|
'fib',
|
2017-12-20 12:06:21 +00:00
|
|
|
'flow_classify',
|
2020-04-11 19:44:12 +05:30
|
|
|
'graph',
|
2017-12-20 11:16:32 +00:00
|
|
|
'hash',
|
2019-01-10 21:06:33 +00:00
|
|
|
'ipsec',
|
2018-10-08 13:12:46 +01:00
|
|
|
'latencystats',
|
2017-12-20 11:16:32 +00:00
|
|
|
'lpm',
|
2017-12-20 12:06:21 +00:00
|
|
|
'member',
|
2018-10-08 14:01:27 +01:00
|
|
|
'metrics',
|
2020-04-11 19:44:14 +05:30
|
|
|
'node',
|
2017-12-20 11:16:32 +00:00
|
|
|
'pipeline',
|
|
|
|
'port',
|
2019-07-02 10:56:06 +01:00
|
|
|
'rawdev',
|
2019-04-30 22:54:17 -05:00
|
|
|
'rcu',
|
2017-12-20 11:16:32 +00:00
|
|
|
'reorder',
|
2019-11-01 15:21:35 +00:00
|
|
|
'rib',
|
2017-12-20 11:16:32 +00:00
|
|
|
'ring',
|
2020-04-09 19:24:54 +02:00
|
|
|
'security',
|
2019-04-03 18:20:15 -05:00
|
|
|
'stack',
|
2020-09-23 12:12:27 +01:00
|
|
|
'telemetry',
|
2017-12-20 11:16:32 +00:00
|
|
|
'timer'
|
|
|
|
]
|
|
|
|
|
2020-03-23 20:59:24 +01:00
|
|
|
# Each test is marked with flag true/false
|
|
|
|
# to indicate whether it can run in no-huge mode.
|
|
|
|
fast_tests = [
|
|
|
|
['acl_autotest', true],
|
|
|
|
['alarm_autotest', false],
|
|
|
|
['atomic_autotest', false],
|
2020-04-27 15:58:52 +08:00
|
|
|
['bitops_autotest', true],
|
2020-03-23 20:59:24 +01:00
|
|
|
['byteorder_autotest', true],
|
|
|
|
['cmdline_autotest', true],
|
|
|
|
['common_autotest', true],
|
|
|
|
['cpuflags_autotest', true],
|
|
|
|
['cycles_autotest', true],
|
|
|
|
['debug_autotest', true],
|
|
|
|
['eal_flags_c_opt_autotest', false],
|
2020-10-15 15:57:19 -07:00
|
|
|
['eal_flags_main_opt_autotest', false],
|
2020-03-23 20:59:24 +01:00
|
|
|
['eal_flags_n_opt_autotest', false],
|
|
|
|
['eal_flags_hpet_autotest', false],
|
|
|
|
['eal_flags_no_huge_autotest', false],
|
|
|
|
['eal_flags_w_opt_autotest', false],
|
|
|
|
['eal_flags_b_opt_autotest', false],
|
|
|
|
['eal_flags_vdev_opt_autotest', false],
|
|
|
|
['eal_flags_r_opt_autotest', false],
|
|
|
|
['eal_flags_mem_autotest', false],
|
|
|
|
['eal_flags_file_prefix_autotest', false],
|
|
|
|
['eal_flags_misc_autotest', false],
|
|
|
|
['eal_fs_autotest', true],
|
|
|
|
['errno_autotest', true],
|
2020-09-15 22:06:57 +03:00
|
|
|
['ethdev_link_status', true],
|
2020-03-23 20:59:24 +01:00
|
|
|
['event_ring_autotest', true],
|
|
|
|
['fib_autotest', true],
|
|
|
|
['fib6_autotest', true],
|
|
|
|
['func_reentrancy_autotest', false],
|
|
|
|
['flow_classify_autotest', false],
|
|
|
|
['hash_autotest', true],
|
|
|
|
['interrupt_autotest', true],
|
2020-04-20 15:25:23 -04:00
|
|
|
['ipfrag_autotest', false],
|
2020-07-06 22:52:30 +02:00
|
|
|
['lcores_autotest', true],
|
2020-03-23 20:59:24 +01:00
|
|
|
['logs_autotest', true],
|
|
|
|
['lpm_autotest', true],
|
|
|
|
['lpm6_autotest', true],
|
|
|
|
['malloc_autotest', false],
|
|
|
|
['mbuf_autotest', false],
|
|
|
|
['mcslock_autotest', false],
|
|
|
|
['memcpy_autotest', true],
|
|
|
|
['memory_autotest', false],
|
|
|
|
['mempool_autotest', false],
|
|
|
|
['memzone_autotest', false],
|
|
|
|
['meter_autotest', true],
|
|
|
|
['multiprocess_autotest', false],
|
|
|
|
['per_lcore_autotest', true],
|
|
|
|
['prefetch_autotest', true],
|
|
|
|
['rcu_qsbr_autotest', true],
|
|
|
|
['red_autotest', true],
|
|
|
|
['rib_autotest', true],
|
|
|
|
['rib6_autotest', true],
|
|
|
|
['ring_autotest', true],
|
|
|
|
['rwlock_test1_autotest', true],
|
|
|
|
['rwlock_rda_autotest', true],
|
|
|
|
['rwlock_rds_wrm_autotest', true],
|
|
|
|
['rwlock_rde_wro_autotest', true],
|
|
|
|
['sched_autotest', true],
|
2020-04-09 19:24:54 +02:00
|
|
|
['security_autotest', false],
|
2020-03-23 20:59:24 +01:00
|
|
|
['spinlock_autotest', true],
|
|
|
|
['stack_autotest', false],
|
|
|
|
['stack_lf_autotest', false],
|
|
|
|
['string_autotest', true],
|
|
|
|
['table_autotest', true],
|
|
|
|
['tailq_autotest', true],
|
|
|
|
['timer_autotest', false],
|
|
|
|
['user_delay_us', true],
|
|
|
|
['version_autotest', true],
|
|
|
|
['crc_autotest', true],
|
|
|
|
['delay_us_sleep_autotest', true],
|
|
|
|
['distributor_autotest', false],
|
|
|
|
['eventdev_common_autotest', true],
|
|
|
|
['fbarray_autotest', true],
|
|
|
|
['hash_readwrite_func_autotest', false],
|
|
|
|
['ipsec_autotest', true],
|
|
|
|
['kni_autotest', false],
|
|
|
|
['kvargs_autotest', true],
|
|
|
|
['member_autotest', true],
|
|
|
|
['metrics_autotest', true],
|
|
|
|
['power_cpufreq_autotest', false],
|
|
|
|
['power_autotest', true],
|
|
|
|
['power_kvm_vm_autotest', false],
|
|
|
|
['reorder_autotest', true],
|
|
|
|
['service_autotest', true],
|
|
|
|
['thash_autotest', true],
|
2020-04-23 00:33:43 +05:30
|
|
|
['trace_autotest', true],
|
2019-01-18 17:40:44 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
perf_test_names = [
|
|
|
|
'ring_perf_autotest',
|
|
|
|
'mempool_perf_autotest',
|
|
|
|
'memcpy_perf_autotest',
|
|
|
|
'hash_perf_autotest',
|
|
|
|
'timer_perf_autotest',
|
|
|
|
'reciprocal_division',
|
|
|
|
'reciprocal_division_perf',
|
|
|
|
'lpm_perf_autotest',
|
2019-11-06 12:21:46 +00:00
|
|
|
'rib_slow_autotest',
|
2019-11-01 15:21:42 +00:00
|
|
|
'fib_slow_autotest',
|
2019-11-01 15:21:44 +00:00
|
|
|
'fib_perf_autotest',
|
2019-01-18 17:40:44 +00:00
|
|
|
'red_all',
|
|
|
|
'barrier_autotest',
|
|
|
|
'hash_multiwriter_autotest',
|
|
|
|
'timer_racecond_autotest',
|
|
|
|
'efd_autotest',
|
|
|
|
'hash_functions_autotest',
|
|
|
|
'member_perf_autotest',
|
|
|
|
'efd_perf_autotest',
|
|
|
|
'lpm6_perf_autotest',
|
2019-11-06 12:21:47 +00:00
|
|
|
'rib6_slow_autotest',
|
2019-11-01 15:21:43 +00:00
|
|
|
'fib6_slow_autotest',
|
2019-11-01 15:21:45 +00:00
|
|
|
'fib6_perf_autotest',
|
2019-04-30 22:54:17 -05:00
|
|
|
'rcu_qsbr_perf_autotest',
|
2019-01-18 17:40:44 +00:00
|
|
|
'red_perf',
|
|
|
|
'distributor_perf_autotest',
|
|
|
|
'pmd_perf_autotest',
|
2019-04-03 18:20:16 -05:00
|
|
|
'stack_perf_autotest',
|
2019-06-15 08:42:24 +02:00
|
|
|
'stack_lf_perf_autotest',
|
2019-06-28 11:01:20 +02:00
|
|
|
'rand_perf_autotest',
|
2020-02-03 13:49:08 -06:00
|
|
|
'hash_readwrite_perf_autotest',
|
2020-02-03 13:49:11 -06:00
|
|
|
'hash_readwrite_lf_perf_autotest',
|
2020-04-23 00:33:44 +05:30
|
|
|
'trace_perf_autotest',
|
2020-04-23 16:25:04 +01:00
|
|
|
'ipsec_perf_autotest',
|
2019-01-18 17:40:44 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
driver_test_names = [
|
|
|
|
'cryptodev_aesni_mb_autotest',
|
|
|
|
'cryptodev_aesni_gcm_autotest',
|
2019-06-15 08:42:17 +02:00
|
|
|
'cryptodev_dpaa_sec_autotest',
|
|
|
|
'cryptodev_dpaa2_sec_autotest',
|
2019-01-18 17:40:44 +00:00
|
|
|
'cryptodev_null_autotest',
|
2019-10-16 20:55:41 +05:30
|
|
|
'cryptodev_octeontx2_autotest',
|
2019-06-15 08:42:17 +02:00
|
|
|
'cryptodev_openssl_autotest',
|
|
|
|
'cryptodev_openssl_asym_autotest',
|
|
|
|
'cryptodev_qat_autotest',
|
|
|
|
'cryptodev_sw_armv8_autotest',
|
2019-01-18 17:40:44 +00:00
|
|
|
'cryptodev_sw_kasumi_autotest',
|
2019-06-15 08:42:17 +02:00
|
|
|
'cryptodev_sw_mvsam_autotest',
|
|
|
|
'cryptodev_sw_snow3g_autotest',
|
2019-01-18 17:40:44 +00:00
|
|
|
'cryptodev_sw_zuc_autotest',
|
2019-06-15 08:42:18 +02:00
|
|
|
'eventdev_selftest_octeontx',
|
|
|
|
'eventdev_selftest_sw',
|
2019-07-02 10:56:06 +01:00
|
|
|
'rawdev_autotest',
|
2019-01-18 17:40:44 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
dump_test_names = [
|
|
|
|
'dump_struct_sizes',
|
|
|
|
'dump_mempool',
|
|
|
|
'dump_malloc_stats',
|
|
|
|
'dump_devargs',
|
|
|
|
'dump_log_types',
|
|
|
|
'dump_ring',
|
|
|
|
'dump_physmem',
|
|
|
|
'dump_memzone',
|
2017-12-20 11:16:32 +00:00
|
|
|
]
|
|
|
|
|
2019-08-02 17:25:51 -04:00
|
|
|
# The following linkages are an exception to allow running the
|
|
|
|
# unit tests without requiring that the developer install the
|
|
|
|
# DPDK libraries. Explicit linkage of drivers (plugin libraries)
|
|
|
|
# in applications should not be used.
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_MEMPOOL_RING')
|
2019-08-02 17:25:51 -04:00
|
|
|
test_deps += 'mempool_ring'
|
|
|
|
endif
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_MEMPOOL_STACK')
|
2019-08-02 17:25:51 -04:00
|
|
|
test_deps += 'mempool_stack'
|
2017-12-20 11:16:32 +00:00
|
|
|
endif
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_EVENT_SKELETON')
|
build: standardize component names and defines
As discussed on the dpdk-dev mailing list[1], we can make some easy
improvements in standardizing the naming of the various components in DPDK,
and their associated feature-enabled macros.
Following this patch, each library will have the name in format,
'librte_<name>.so', and the macro indicating that library is enabled in the
build will have the form 'RTE_LIB_<NAME>'.
Similarly, for libraries, the equivalent name formats and macros are:
'librte_<class>_<name>.so' and 'RTE_<CLASS>_<NAME>', where class is the
device type taken from the relevant driver subdirectory name, i.e. 'net',
'crypto' etc.
To avoid too many changes at once for end applications, the old macro names
will still be provided in the build in this release, but will be removed
subsequently.
[1] http://inbox.dpdk.org/dev/ef7c1a87-79ab-e405-4202-39b7ad6b0c71@solarflare.com/t/#u
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Rosen Xu <rosen.xu@intel.com>
2020-10-15 16:05:53 +01:00
|
|
|
test_deps += 'event_skeleton'
|
2019-08-02 17:25:51 -04:00
|
|
|
endif
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_LIB_TELEMETRY')
|
2020-09-23 12:12:27 +01:00
|
|
|
test_sources += ['test_telemetry_json.c', 'test_telemetry_data.c']
|
|
|
|
fast_tests += [['telemetry_json_autotest', true], ['telemetry_data_autotest', true]]
|
2020-04-30 17:01:24 +01:00
|
|
|
endif
|
2019-08-02 17:25:51 -04:00
|
|
|
|
|
|
|
# The following linkages of drivers are required because
|
|
|
|
# they are used via a driver-specific API.
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_NET_BOND')
|
build: standardize component names and defines
As discussed on the dpdk-dev mailing list[1], we can make some easy
improvements in standardizing the naming of the various components in DPDK,
and their associated feature-enabled macros.
Following this patch, each library will have the name in format,
'librte_<name>.so', and the macro indicating that library is enabled in the
build will have the form 'RTE_LIB_<NAME>'.
Similarly, for libraries, the equivalent name formats and macros are:
'librte_<class>_<name>.so' and 'RTE_<CLASS>_<NAME>', where class is the
device type taken from the relevant driver subdirectory name, i.e. 'net',
'crypto' etc.
To avoid too many changes at once for end applications, the old macro names
will still be provided in the build in this release, but will be removed
subsequently.
[1] http://inbox.dpdk.org/dev/ef7c1a87-79ab-e405-4202-39b7ad6b0c71@solarflare.com/t/#u
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Rosen Xu <rosen.xu@intel.com>
2020-10-15 16:05:53 +01:00
|
|
|
test_deps += 'net_bond'
|
test/bonding: allow disabling driver
The autotest application build was partially enabled for building with
the net/bond driver disabled, but a number of items were missed, leading
to build errors when the driver was disabled, e.g. by simply doing
"-Ddisable_drivers=net/*" when calling meson.
../app/test/test_link_bonding.c:25:10: fatal error: rte_eth_bond.h: \
No such file or directory
With this fix in place, it's possible to build DPDK with meson with all
non-bus, non-mempool drivers disabled i.e. using meson option
-Ddisable_drivers=baseband/*,compress/*,crypto/*,event/*,net/*,raw/*,vdpa/*
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
Tested-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
2020-05-01 16:05:49 +01:00
|
|
|
test_sources += ['test_link_bonding.c', 'test_link_bonding_rssconf.c']
|
|
|
|
driver_test_names += ['link_bonding_autotest', 'link_bonding_rssconf_autotest']
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_NET_RING')
|
2020-05-27 15:57:45 +01:00
|
|
|
test_sources += 'test_link_bonding_mode4.c'
|
|
|
|
driver_test_names += 'link_bonding_mode4_autotest'
|
|
|
|
endif
|
2017-12-20 12:06:21 +00:00
|
|
|
endif
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_NET_RING')
|
build: standardize component names and defines
As discussed on the dpdk-dev mailing list[1], we can make some easy
improvements in standardizing the naming of the various components in DPDK,
and their associated feature-enabled macros.
Following this patch, each library will have the name in format,
'librte_<name>.so', and the macro indicating that library is enabled in the
build will have the form 'RTE_LIB_<NAME>'.
Similarly, for libraries, the equivalent name formats and macros are:
'librte_<class>_<name>.so' and 'RTE_<CLASS>_<NAME>', where class is the
device type taken from the relevant driver subdirectory name, i.e. 'net',
'crypto' etc.
To avoid too many changes at once for end applications, the old macro names
will still be provided in the build in this release, but will be removed
subsequently.
[1] http://inbox.dpdk.org/dev/ef7c1a87-79ab-e405-4202-39b7ad6b0c71@solarflare.com/t/#u
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Rosen Xu <rosen.xu@intel.com>
2020-10-15 16:05:53 +01:00
|
|
|
test_deps += 'net_ring'
|
2019-12-23 06:53:05 +00:00
|
|
|
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 += 'sample_packet_forward.c'
|
|
|
|
test_sources += 'test_pdump.c'
|
2020-03-23 20:59:24 +01:00
|
|
|
fast_tests += [['ring_pmd_autotest', true]]
|
2019-12-23 06:53:05 +00:00
|
|
|
perf_test_names += 'ring_pmd_perf_autotest'
|
2020-03-23 20:59:24 +01:00
|
|
|
fast_tests += [['event_eth_tx_adapter_autotest', false]]
|
|
|
|
fast_tests += [['bitratestats_autotest', true]]
|
|
|
|
fast_tests += [['latencystats_autotest', true]]
|
|
|
|
fast_tests += [['pdump_autotest', true]]
|
2017-12-20 12:06:21 +00:00
|
|
|
endif
|
2019-08-02 17:25:51 -04:00
|
|
|
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_LIB_POWER')
|
2018-02-01 14:20:10 +00:00
|
|
|
test_deps += 'power'
|
|
|
|
endif
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_LIB_KNI')
|
2018-02-01 14:20:11 +00:00
|
|
|
test_deps += 'kni'
|
|
|
|
endif
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_LIB_PDUMP')
|
2019-08-02 17:25:51 -04:00
|
|
|
test_deps += 'pdump'
|
|
|
|
endif
|
2017-12-20 11:16:32 +00:00
|
|
|
|
2018-06-30 01:27:37 +08:00
|
|
|
if cc.has_argument('-Wno-format-truncation')
|
|
|
|
cflags += '-Wno-format-truncation'
|
|
|
|
endif
|
|
|
|
|
2018-10-04 11:20:33 +01:00
|
|
|
# specify -D_GNU_SOURCE unconditionally
|
2019-03-13 18:06:51 +01:00
|
|
|
cflags += '-D_GNU_SOURCE'
|
2020-04-11 19:44:12 +05:30
|
|
|
# Strict-aliasing rules are violated by uint8_t[] to context size casts.
|
|
|
|
cflags += '-fno-strict-aliasing'
|
2018-10-04 11:20:33 +01:00
|
|
|
|
2020-07-10 22:43:41 +01:00
|
|
|
# Enable using internal APIs in unit tests
|
|
|
|
cflags += ['-DALLOW_INTERNAL_API']
|
|
|
|
|
2017-12-20 11:16:32 +00:00
|
|
|
test_dep_objs = []
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_LIB_COMPRESSDEV')
|
2019-01-18 17:40:44 +00:00
|
|
|
compress_test_dep = dependency('zlib', required: false)
|
|
|
|
if compress_test_dep.found()
|
|
|
|
test_dep_objs += compress_test_dep
|
|
|
|
test_sources += 'test_compressdev.c'
|
|
|
|
test_deps += 'compressdev'
|
2020-03-23 20:59:24 +01:00
|
|
|
fast_tests += [['compressdev_autotest', false]]
|
2019-01-18 17:40:44 +00:00
|
|
|
endif
|
2018-05-04 11:22:14 +01:00
|
|
|
endif
|
|
|
|
|
2020-10-15 16:05:54 +01:00
|
|
|
if dpdk_conf.has('RTE_CRYPTO_SCHEDULER')
|
2019-06-15 08:42:17 +02:00
|
|
|
driver_test_names += 'cryptodev_scheduler_autotest'
|
build: standardize component names and defines
As discussed on the dpdk-dev mailing list[1], we can make some easy
improvements in standardizing the naming of the various components in DPDK,
and their associated feature-enabled macros.
Following this patch, each library will have the name in format,
'librte_<name>.so', and the macro indicating that library is enabled in the
build will have the form 'RTE_LIB_<NAME>'.
Similarly, for libraries, the equivalent name formats and macros are:
'librte_<class>_<name>.so' and 'RTE_<CLASS>_<NAME>', where class is the
device type taken from the relevant driver subdirectory name, i.e. 'net',
'crypto' etc.
To avoid too many changes at once for end applications, the old macro names
will still be provided in the build in this release, but will be removed
subsequently.
[1] http://inbox.dpdk.org/dev/ef7c1a87-79ab-e405-4202-39b7ad6b0c71@solarflare.com/t/#u
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Rosen Xu <rosen.xu@intel.com>
2020-10-15 16:05:53 +01:00
|
|
|
test_deps += 'crypto_scheduler'
|
2019-06-15 08:42:17 +02:00
|
|
|
endif
|
|
|
|
|
2017-12-20 11:16:32 +00:00
|
|
|
foreach d:test_deps
|
|
|
|
def_lib = get_option('default_library')
|
|
|
|
test_dep_objs += get_variable(def_lib + '_rte_' + d)
|
|
|
|
endforeach
|
2018-02-01 14:20:08 +00:00
|
|
|
test_dep_objs += cc.find_library('execinfo', required: false)
|
2017-12-20 11:16:32 +00:00
|
|
|
|
|
|
|
link_libs = []
|
|
|
|
if get_option('default_library') == 'static'
|
2020-06-30 15:14:27 +01:00
|
|
|
link_libs = dpdk_static_libraries + dpdk_drivers
|
2017-12-20 11:16:32 +00:00
|
|
|
endif
|
|
|
|
|
2019-05-30 15:38:36 +03:00
|
|
|
dpdk_test = executable('dpdk-test',
|
|
|
|
test_sources,
|
2020-07-01 09:31:34 +02:00
|
|
|
link_whole: link_libs,
|
2019-05-30 15:38:36 +03:00
|
|
|
dependencies: test_dep_objs,
|
2020-04-13 16:55:30 +02:00
|
|
|
c_args: cflags,
|
2020-07-01 19:16:38 +02:00
|
|
|
install_rpath: join_paths(get_option('prefix'),
|
|
|
|
driver_install_path),
|
2019-07-24 16:47:31 +01:00
|
|
|
install: true)
|
2017-12-20 11:16:32 +00:00
|
|
|
|
2020-04-09 18:41:49 +02:00
|
|
|
has_hugepage = run_command('has-hugepage.sh').stdout().strip() != '0'
|
2020-03-23 20:59:24 +01:00
|
|
|
message('hugepage availability: @0@'.format(has_hugepage))
|
|
|
|
|
2019-05-30 15:38:36 +03:00
|
|
|
# some perf tests (eg: memcpy perf autotest)take very long
|
|
|
|
# to complete, so timeout to 10 minutes
|
|
|
|
timeout_seconds = 600
|
|
|
|
timeout_seconds_fast = 10
|
2019-04-12 12:21:41 -04:00
|
|
|
|
2020-01-20 12:22:18 +00:00
|
|
|
get_coremask = find_program('get-coremask.sh')
|
|
|
|
num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()
|
2019-01-18 17:40:44 +00:00
|
|
|
|
2020-03-23 20:59:22 +01:00
|
|
|
default_test_args = [num_cores_arg]
|
2019-12-23 06:53:05 +00:00
|
|
|
|
2020-03-23 20:59:24 +01:00
|
|
|
foreach arg : fast_tests
|
2020-03-23 20:59:22 +01:00
|
|
|
test_args = default_test_args
|
2020-03-23 20:59:24 +01:00
|
|
|
run_test = true
|
|
|
|
if not has_hugepage
|
|
|
|
if arg[1]
|
|
|
|
test_args += ['--no-huge', '-m', '2048']
|
|
|
|
else
|
|
|
|
run_test = false
|
|
|
|
endif
|
|
|
|
endif
|
2020-03-23 20:59:22 +01:00
|
|
|
|
2019-12-23 06:53:05 +00:00
|
|
|
if (get_option('default_library') == 'shared' and
|
2020-03-23 20:59:24 +01:00
|
|
|
arg[0] == 'event_eth_tx_adapter_autotest')
|
2019-12-23 06:53:05 +00:00
|
|
|
foreach drv:dpdk_drivers
|
|
|
|
test_args += ['-d', drv.full_path().split('.a')[0] + '.so']
|
|
|
|
endforeach
|
|
|
|
endif
|
2020-03-23 20:59:22 +01:00
|
|
|
if is_linux
|
2020-03-23 20:59:24 +01:00
|
|
|
test_args += ['--file-prefix=@0@'.format(arg[0])]
|
2020-03-23 20:59:22 +01:00
|
|
|
endif
|
|
|
|
|
2020-03-23 20:59:24 +01:00
|
|
|
if run_test
|
|
|
|
test(arg[0], dpdk_test,
|
|
|
|
env : ['DPDK_TEST=' + arg[0]],
|
|
|
|
args : test_args,
|
|
|
|
timeout : timeout_seconds_fast,
|
|
|
|
is_parallel : false,
|
|
|
|
suite : 'fast-tests')
|
|
|
|
endif
|
2019-05-30 15:38:36 +03:00
|
|
|
endforeach
|
|
|
|
|
|
|
|
foreach arg : perf_test_names
|
|
|
|
test(arg, dpdk_test,
|
|
|
|
env : ['DPDK_TEST=' + arg],
|
2020-03-23 20:59:22 +01:00
|
|
|
args : default_test_args,
|
2019-05-30 15:38:36 +03:00
|
|
|
timeout : timeout_seconds,
|
|
|
|
is_parallel : false,
|
|
|
|
suite : 'perf-tests')
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
foreach arg : driver_test_names
|
|
|
|
test(arg, dpdk_test,
|
2019-01-18 17:40:44 +00:00
|
|
|
env : ['DPDK_TEST=' + arg],
|
2020-03-23 20:59:22 +01:00
|
|
|
args : default_test_args,
|
2019-01-18 17:40:44 +00:00
|
|
|
timeout : timeout_seconds,
|
|
|
|
is_parallel : false,
|
2019-05-30 15:38:36 +03:00
|
|
|
suite : 'driver-tests')
|
|
|
|
endforeach
|
2019-01-18 17:40:44 +00:00
|
|
|
|
2019-05-30 15:38:36 +03:00
|
|
|
foreach arg : dump_test_names
|
|
|
|
test(arg, dpdk_test,
|
|
|
|
env : ['DPDK_TEST=' + arg],
|
2020-03-23 20:59:22 +01:00
|
|
|
args : default_test_args,
|
2019-05-30 15:38:36 +03:00
|
|
|
timeout : timeout_seconds,
|
|
|
|
is_parallel : false,
|
|
|
|
suite : 'debug-tests')
|
|
|
|
endforeach
|