cryptodev: use single mempool for asymmetric session
[dpdk.git] / app / test / meson.build
index ef90b16..5fc1dd1 100644 (file)
@@ -32,11 +32,15 @@ test_sources = files(
         'test_cryptodev.c',
         'test_cryptodev_asym.c',
         'test_cryptodev_blockcipher.c',
+        'test_cryptodev_security_ipsec.c',
         'test_cryptodev_security_pdcp.c',
         'test_cycles.c',
         'test_debug.c',
+        'test_devargs.c',
         'test_distributor.c',
         'test_distributor_perf.c',
+        'test_dmadev.c',
+        'test_dmadev_api.c',
         'test_eal_flags.c',
         'test_eal_fs.c',
         'test_efd.c',
@@ -55,7 +59,6 @@ test_sources = files(
         'test_fib6.c',
         'test_fib6_perf.c',
         'test_func_reentrancy.c',
-        'test_flow_classify.c',
         'test_graph.c',
         'test_graph_perf.c',
         'test_hash.c',
@@ -78,6 +81,7 @@ test_sources = files(
         'test_lpm6_perf.c',
         'test_lpm_perf.c',
         'test_malloc.c',
+        'test_malloc_perf.c',
         'test_mbuf.c',
         'test_member.c',
         'test_member_perf.c',
@@ -88,7 +92,6 @@ test_sources = files(
         'test_mempool_perf.c',
         'test_memzone.c',
         'test_meter.c',
-        'test_metrics.c',
         'test_mcslock.c',
         'test_mp_secondary.c',
         'test_per_lcore.c',
@@ -105,6 +108,7 @@ test_sources = files(
         'test_reciprocal_division.c',
         'test_reciprocal_division_perf.c',
         'test_red.c',
+        'test_pie.c',
         'test_reorder.c',
         'test_rib.c',
         'test_rib6.c',
@@ -126,14 +130,9 @@ test_sources = files(
         'test_stack.c',
         'test_stack_perf.c',
         '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_thash_perf.c',
         'test_timer.c',
         'test_timer_perf.c',
         'test_timer_racecond.c',
@@ -146,47 +145,18 @@ test_sources = files(
         'virtual_pmd.c',
 )
 
-test_deps = [
-        'acl',
-        'bus_pci',
-        'bus_vdev',
-        'bitratestats',
-        'bpf',
-        'cfgfile',
-        'cmdline',
-        'cryptodev',
-        'distributor',
-        'efd',
-        'ethdev',
-        'eventdev',
-        'fib',
-        'flow_classify',
-        'graph',
-        'hash',
-        'ipsec',
-        'latencystats',
-        'lpm',
-        'member',
-        'metrics',
-        'node',
-        'pipeline',
-        'port',
-        'rawdev',
-        'rcu',
-        'reorder',
-        'rib',
-        'ring',
-        'security',
-        'stack',
-        'telemetry',
-        'timer',
-]
+test_deps = enabled_libs
+# as well as libs, the pci and vdev bus drivers are needed for a lot of tests
+test_deps += ['bus_pci', 'bus_vdev']
 
 # Each test is marked with flag true/false
 # to indicate whether it can run in no-huge mode.
 fast_tests = [
         ['acl_autotest', true],
         ['atomic_autotest', false],
+        ['bitmap_autotest', true],
+        ['bpf_autotest', true],
+        ['bpf_convert_autotest', true],
         ['bitops_autotest', true],
         ['byteorder_autotest', true],
         ['cksum_autotest', true],
@@ -194,6 +164,7 @@ fast_tests = [
         ['common_autotest', true],
         ['cpuflags_autotest', true],
         ['debug_autotest', true],
+        ['devargs_autotest', true],
         ['eal_flags_c_opt_autotest', false],
         ['eal_flags_main_opt_autotest', false],
         ['eal_flags_n_opt_autotest', false],
@@ -213,7 +184,6 @@ fast_tests = [
         ['fib_autotest', true],
         ['fib6_autotest', true],
         ['func_reentrancy_autotest', false],
-        ['flow_classify_autotest', false],
         ['hash_autotest', true],
         ['interrupt_autotest', true],
         ['ipfrag_autotest', false],
@@ -234,7 +204,7 @@ fast_tests = [
         ['pflock_autotest', true],
         ['prefetch_autotest', true],
         ['rcu_qsbr_autotest', true],
-        ['red_autotest', true],
+        ['pie_autotest', true],
         ['rib_autotest', true],
         ['rib6_autotest', true],
         ['ring_autotest', true],
@@ -248,7 +218,6 @@ fast_tests = [
         ['stack_autotest', false],
         ['stack_lf_autotest', false],
         ['string_autotest', true],
-        ['table_autotest', true],
         ['tailq_autotest', true],
         ['ticketlock_autotest', true],
         ['timer_autotest', false],
@@ -263,7 +232,6 @@ fast_tests = [
         ['kni_autotest', false],
         ['kvargs_autotest', true],
         ['member_autotest', true],
-        ['metrics_autotest', true],
         ['power_cpufreq_autotest', false],
         ['power_autotest', true],
         ['power_kvm_vm_autotest', false],
@@ -273,8 +241,17 @@ fast_tests = [
         ['trace_autotest', true],
 ]
 
+# Tests known to have issues or which don't belong in other tests lists.
+extra_test_names = [
+        'alarm_autotest', # ee00af60170b ("test: remove strict timing requirements some tests")
+        'cycles_autotest', # ee00af60170b ("test: remove strict timing requirements some tests")
+        'delay_us_sleep_autotest', # ee00af60170b ("test: remove strict timing requirements some tests")
+        'red_autotest', # https://bugs.dpdk.org/show_bug.cgi?id=826
+]
+
 perf_test_names = [
         'ring_perf_autotest',
+        'malloc_perf_autotest',
         'mempool_perf_autotest',
         'memcpy_perf_autotest',
         'hash_perf_autotest',
@@ -286,6 +263,7 @@ perf_test_names = [
         'fib_slow_autotest',
         'fib_perf_autotest',
         'red_all',
+        'pie_all',
         'barrier_autotest',
         'hash_multiwriter_autotest',
         'timer_racecond_autotest',
@@ -299,6 +277,7 @@ perf_test_names = [
         'fib6_perf_autotest',
         'rcu_qsbr_perf_autotest',
         'red_perf',
+        'pie_perf',
         'distributor_perf_autotest',
         'pmd_perf_autotest',
         'stack_perf_autotest',
@@ -308,38 +287,47 @@ perf_test_names = [
         'hash_readwrite_lf_perf_autotest',
         'trace_perf_autotest',
         'ipsec_perf_autotest',
+        'thash_perf_autotest',
 ]
 
-driver_test_names = [
-        'cryptodev_aesni_mb_autotest',
-        'cryptodev_aesni_gcm_autotest',
-        'cryptodev_dpaa_sec_autotest',
-        'cryptodev_dpaa2_sec_autotest',
-        'cryptodev_null_autotest',
-        'cryptodev_octeontx2_autotest',
-        'cryptodev_openssl_autotest',
-        'cryptodev_openssl_asym_autotest',
-        'cryptodev_qat_autotest',
-        'cryptodev_sw_armv8_autotest',
-        'cryptodev_sw_kasumi_autotest',
-        'cryptodev_sw_mvsam_autotest',
-        'cryptodev_sw_snow3g_autotest',
-        'cryptodev_sw_zuc_autotest',
-        'eventdev_selftest_octeontx',
-        'eventdev_selftest_sw',
-        'rawdev_autotest',
-]
+driver_test_names = []
 
-dump_test_names = [
-        'dump_struct_sizes',
-        'dump_mempool',
-        'dump_malloc_stats',
-        'dump_devargs',
-        'dump_log_types',
-        'dump_ring',
-        'dump_physmem',
-        'dump_memzone',
-]
+dump_test_names = []
+
+if not is_windows
+    driver_test_names += [
+            'cryptodev_aesni_mb_autotest',
+            'cryptodev_aesni_gcm_autotest',
+            'cryptodev_cn9k_autotest',
+            'cryptodev_cn10k_autotest',
+            'cryptodev_dpaa_sec_autotest',
+            'cryptodev_dpaa2_sec_autotest',
+            'cryptodev_null_autotest',
+            'cryptodev_openssl_autotest',
+            'cryptodev_openssl_asym_autotest',
+            'cryptodev_qat_autotest',
+            'cryptodev_sw_armv8_autotest',
+            'cryptodev_sw_kasumi_autotest',
+            'cryptodev_sw_mvsam_autotest',
+            'cryptodev_sw_snow3g_autotest',
+            'cryptodev_sw_zuc_autotest',
+            'dmadev_autotest',
+            'eventdev_selftest_octeontx',
+            'eventdev_selftest_sw',
+            'rawdev_autotest',
+    ]
+
+    dump_test_names += [
+            'dump_struct_sizes',
+            'dump_mempool',
+            'dump_malloc_stats',
+            'dump_devargs',
+            'dump_log_types',
+            'dump_ring',
+            'dump_physmem',
+            'dump_memzone',
+    ]
+endif
 
 # The following linkages are an exception to allow running the
 # unit tests without requiring that the developer install the
@@ -354,10 +342,32 @@ endif
 if dpdk_conf.has('RTE_EVENT_SKELETON')
     test_deps += 'event_skeleton'
 endif
-if dpdk_conf.has('RTE_LIB_TELEMETRY')
+
+if dpdk_conf.has('RTE_LIB_FLOW_CLASSIFY')
+    test_sources += 'test_flow_classify.c'
+    fast_tests += [['flow_classify_autotest', false]]
+endif
+if dpdk_conf.has('RTE_LIB_METRICS')
+    test_sources += ['test_metrics.c']
+    fast_tests += [['metrics_autotest', true]]
+endif
+if not is_windows and dpdk_conf.has('RTE_LIB_TELEMETRY')
     test_sources += ['test_telemetry_json.c', 'test_telemetry_data.c']
     fast_tests += [['telemetry_json_autotest', true], ['telemetry_data_autotest', true]]
 endif
+if dpdk_conf.has('RTE_LIB_PIPELINE')
+# pipeline lib depends on port and table libs, so those must be present
+# if pipeline library is.
+    test_sources += [
+            'test_table.c',
+            'test_table_acl.c',
+            'test_table_combined.c',
+            'test_table_pipeline.c',
+            'test_table_ports.c',
+            'test_table_tables.c',
+    ]
+    fast_tests += [['table_autotest', true]]
+endif
 
 # The following linkages of drivers are required because
 # they are used via a driver-specific API.
@@ -375,26 +385,34 @@ if dpdk_conf.has('RTE_NET_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 += 'sample_packet_forward.c'
-    test_sources += 'test_pdump.c'
     fast_tests += [['ring_pmd_autotest', true]]
     perf_test_names += 'ring_pmd_perf_autotest'
     fast_tests += [['event_eth_tx_adapter_autotest', false]]
-    fast_tests += [['bitratestats_autotest', true]]
-    fast_tests += [['latencystats_autotest', true]]
-    fast_tests += [['pdump_autotest', true]]
-endif
-
-if dpdk_conf.has('RTE_LIB_POWER')
-    test_deps += 'power'
+    if dpdk_conf.has('RTE_LIB_BITRATESTATS')
+        test_sources += 'test_bitratestats.c'
+        fast_tests += [['bitratestats_autotest', true]]
+    endif
+    if dpdk_conf.has('RTE_LIB_LATENCYSTATS')
+        test_sources += 'test_latencystats.c'
+        fast_tests += [['latencystats_autotest', true]]
+    endif
+    if dpdk_conf.has('RTE_LIB_PDUMP')
+        test_sources += 'test_pdump.c'
+        fast_tests += [['pdump_autotest', true]]
+    endif
 endif
-if dpdk_conf.has('RTE_LIB_KNI')
-    test_deps += 'kni'
+if dpdk_conf.has('RTE_NET_NULL')
+    test_deps += 'net_null'
+    test_sources += 'test_vdev.c'
+    fast_tests += [['vdev_autotest', true]]
 endif
-if dpdk_conf.has('RTE_LIB_PDUMP')
-    test_deps += 'pdump'
+
+if dpdk_conf.has('RTE_HAS_LIBPCAP')
+    ext_deps += pcap_dep
+    if dpdk_conf.has('RTE_LIB_PCAPNG')
+        test_sources += 'test_pcapng.c'
+    endif
 endif
 
 if cc.has_argument('-Wno-format-truncation')
@@ -413,7 +431,6 @@ if dpdk_conf.has('RTE_LIB_COMPRESSDEV')
     if compress_test_dep.found()
         test_dep_objs += compress_test_dep
         test_sources += 'test_compressdev.c'
-        test_deps += 'compressdev'
         fast_tests += [['compressdev_autotest', false]]
     endif
 endif
@@ -436,13 +453,13 @@ endif
 dpdk_test = executable('dpdk-test',
         test_sources,
         link_whole: link_libs,
-        dependencies: test_dep_objs,
+        dependencies: test_dep_objs + ext_deps,
         c_args: cflags,
         install_rpath: join_paths(get_option('prefix'),
              driver_install_path),
         install: true)
 
-has_hugepage = run_command('has-hugepage.sh').stdout().strip() != '0'
+has_hugepage = run_command(py3, 'has_hugepage.py', check: true).stdout().strip() != '0'
 message('hugepage availability: @0@'.format(has_hugepage))
 
 # some perf tests (eg: memcpy perf autotest)take very long
@@ -450,13 +467,8 @@ message('hugepage availability: @0@'.format(has_hugepage))
 timeout_seconds = 600
 timeout_seconds_fast = 10
 
-get_coremask = find_program('get-coremask.sh')
-num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()
-
-default_test_args = [num_cores_arg]
-
 foreach arg : fast_tests
-    test_args = default_test_args
+    test_args = []
     run_test = true
     if not has_hugepage
         if arg[1]
@@ -489,7 +501,6 @@ endforeach
 foreach arg : perf_test_names
     test(arg, dpdk_test,
             env : ['DPDK_TEST=' + arg],
-            args : default_test_args,
             timeout : timeout_seconds,
             is_parallel : false,
             suite : 'perf-tests')
@@ -498,7 +509,6 @@ endforeach
 foreach arg : driver_test_names
     test(arg, dpdk_test,
             env : ['DPDK_TEST=' + arg],
-            args : default_test_args,
             timeout : timeout_seconds,
             is_parallel : false,
             suite : 'driver-tests')
@@ -507,8 +517,15 @@ endforeach
 foreach arg : dump_test_names
     test(arg, dpdk_test,
             env : ['DPDK_TEST=' + arg],
-            args : default_test_args,
             timeout : timeout_seconds,
             is_parallel : false,
             suite : 'debug-tests')
 endforeach
+
+foreach arg : extra_test_names
+    test(arg, dpdk_test,
+            env : ['DPDK_TEST=' + arg],
+            timeout : timeout_seconds,
+            is_parallel : false,
+            suite : 'extra-tests')
+endforeach