[PATCH v11 0/9] app/test: enable subset of tests on Windows

Kadam, Pallavi pallavi.kadam at intel.com
Sat Dec 4 01:07:59 CET 2021


On 12/2/2021 4:06 PM, Jie Zhou wrote:
> This patchset is to enable a subset of unit tests on windows. It mainly includes:
> - Replace POSIX specific codes
> - Add test stubs for not supported ones on Windows
> - Fix some lib and tests per failures investigation
> - Replace .sh script with .py script for meson.build
> - Enable build and run subset of unit tests on Windows
>
> Future work:
> - Work with CI/CD lab to onboard unit tests on Windows to catch regression
> - Enable more tests
>
> ---
> V2 changes:
>      - Fix compilation error on FreeBSD
>      - Fix email mismatch issue
>      - Add a missing space around "*"
>
> ---
> V3 changes:
>      - Fix a misc c coding style issue
>      - Revise some commit title and message body
>      - Fix violations of PEP8 in new added Python scripts
>      - Add error handling in get_coremask.py
>      - Fix has_hugepage.py to check system support of hugepages
>        instead of checking privileges
>      - Fix test meson.build to run Python scripts using py3
>      - Consolidate lists of source files, test dep, etc. across all
>        platforms, with conditional extending on some platform(s)
>
> ---
> V4 changes:
>      - Remove building of ip_frag, rib, and reorder libraries on Windows.
>        These three libs usually can be built on Windows without change.
>        However, in between the time of V3 and V4, there is regression in
>        upstream caused build failures of these three libs. Will separately
>        investigate and enable these libraries.
>
>      - Remove previous patch#2 (Enable mempool/stack on Windows) from this
>        patchset as it was separated out and merged as patch-19314.
>
>      - Consolidate the source files, deps, tests lists across platforms as
>        much as possible.
>
> ---
> V5 changes:
>      - Remove a space between function name and open parenthesis '('
>      - Add back a header mistakenly deleted
>
> ---
> V6 changes:
>     - Fix inconsistent static vs. non-static declarations
>
> ---
> V7 changes:
>     - Remove get_coremask.py as it is not needed any more in meson.build
>     - Remove enablement of efd and lpm and their corresponding unit tests.
>       The enablement of these two libs and their UTs will be in separate
>       patches after this patch set.
>
> V8 changes:
>     - Fix coding style issue of using C99 // comments
>
> ---
> V9 changes:
>     - Fix has_hugepage.py with adding failure handling on Linux, using
>       proper variable name to follow Python convention, and removing
>       unnecessary comment.
>     - Enable previously skipped test_cmdline_socket_fns test cases
>     - Revise title and message, and add Fixes info for current Patch#3
>     - Combine 2 patches (previous #2 and #3 in V8) into one and with
>       more detailed message
>
> ---
> V10 changes:
>     - Fix indentation
>
> ---
> V11 changes:
>     - Remove mandatory dependency on bitratestats, latencystats,
>       and metrics libs in test meson.build, which was reintroduced
>       at rebase in V9.
>   
>
> Jie Zhou (9):
>    eal/windows: return ENOTSUP for not supported API
>    app/test: remove POSIX-specific code
>    app/test: fix incorrect errno variable
>    app/test: skip interrupt tests on Windows
>    app/test: skip two logs_autotest cases on Windows
>    app/test: differentiate a strerror on different OS
>    app/test: remove two alarm_autotest cases
>    app/test: replace .sh script with .py script
>    app/test: enable subset of unit tests on Windows
>
>   app/test/commands.c                      |   2 -
>   app/test/has-hugepage.sh                 |  11 ---
>   app/test/has_hugepage.py                 |  26 +++++
>   app/test/meson.build                     | 118 ++++++++++++-----------
>   app/test/packet_burst_generator.c        |   1 +
>   app/test/process.h                       |   4 +-
>   app/test/test.c                          |   5 +-
>   app/test/test_acl.c                      |  12 +++
>   app/test/test_alarm.c                    |   4 +
>   app/test/test_bpf.c                      |  15 ++-
>   app/test/test_byteorder.c                |   2 +-
>   app/test/test_cksum.c                    |  12 +++
>   app/test/test_cmdline.c                  |   2 +
>   app/test/test_cmdline_ipaddr.c           |   5 +
>   app/test/test_cmdline_lib.c              |  13 ++-
>   app/test/test_crc.c                      |   1 -
>   app/test/test_cryptodev.c                |   4 +
>   app/test/test_cryptodev_asym.c           |   4 +
>   app/test/test_cryptodev_blockcipher.c    |   4 +
>   app/test/test_cryptodev_security_ipsec.c |   4 +
>   app/test/test_cryptodev_security_pdcp.c  |   4 +
>   app/test/test_debug.c                    |  17 +++-
>   app/test/test_distributor.c              |  13 +++
>   app/test/test_distributor_perf.c         |  13 +++
>   app/test/test_dmadev.c                   |  14 ++-
>   app/test/test_dmadev_api.c               |   4 +
>   app/test/test_eal_flags.c                |  90 +++++++++++++++++
>   app/test/test_eal_fs.c                   |  12 +++
>   app/test/test_efd.c                      |  15 ++-
>   app/test/test_efd_perf.c                 |  16 ++-
>   app/test/test_errno.c                    |  12 ++-
>   app/test/test_event_crypto_adapter.c     |  15 ++-
>   app/test/test_event_eth_rx_adapter.c     |  25 ++++-
>   app/test/test_event_eth_tx_adapter.c     |  12 +++
>   app/test/test_event_ring.c               |  16 ++-
>   app/test/test_event_timer_adapter.c      |  16 ++-
>   app/test/test_eventdev.c                 |  20 +++-
>   app/test/test_external_mem.c             |  18 +++-
>   app/test/test_fib.c                      |  22 ++++-
>   app/test/test_fib6.c                     |  24 ++++-
>   app/test/test_fib6_perf.c                |  16 ++-
>   app/test/test_fib_perf.c                 |  15 ++-
>   app/test/test_flow_classify.c            |  13 +++
>   app/test/test_func_reentrancy.c          |  12 +++
>   app/test/test_graph.c                    |  18 +++-
>   app/test/test_graph_perf.c               |  16 ++-
>   app/test/test_hash_perf.c                |  12 +++
>   app/test/test_interrupts.c               |  10 ++
>   app/test/test_ipfrag.c                   |  16 ++-
>   app/test/test_ipsec.c                    |  15 ++-
>   app/test/test_ipsec_perf.c               |  15 ++-
>   app/test/test_ipsec_sad.c                |  14 ++-
>   app/test/test_kni.c                      |  10 +-
>   app/test/test_lcores.c                   |  12 +++
>   app/test/test_logs.c                     |   6 +-
>   app/test/test_lpm.c                      |  14 ++-
>   app/test/test_lpm6.c                     |  14 ++-
>   app/test/test_lpm6_perf.c                |  14 ++-
>   app/test/test_lpm_perf.c                 |  13 ++-
>   app/test/test_malloc.c                   |  17 +++-
>   app/test/test_mbuf.c                     |  13 ++-
>   app/test/test_member.c                   |  16 ++-
>   app/test/test_member_perf.c              |  16 ++-
>   app/test/test_memcpy_perf.c              |  18 +++-
>   app/test/test_memory.c                   |   2 +-
>   app/test/test_mempool_perf.c             |  12 +++
>   app/test/test_mp_secondary.c             |  12 +++
>   app/test/test_pie.c                      |  30 +++++-
>   app/test/test_pmd_perf.c                 |   6 +-
>   app/test/test_rawdev.c                   |  17 +++-
>   app/test/test_rcu_qsbr_perf.c            |  12 +++
>   app/test/test_reciprocal_division.c      |  12 +++
>   app/test/test_reciprocal_division_perf.c |  12 +++
>   app/test/test_red.c                      |  29 +++++-
>   app/test/test_reorder.c                  |  15 ++-
>   app/test/test_rib.c                      |  22 ++++-
>   app/test/test_rib6.c                     |  22 ++++-
>   app/test/test_ring_stress_impl.h         |   2 +-
>   app/test/test_sched.c                    |  14 ++-
>   app/test/test_security.c                 |  16 ++-
>   app/test/test_table.c                    |  13 +++
>   app/test/test_table_acl.c                |   3 +
>   app/test/test_table_combined.c           |   4 +
>   app/test/test_table_pipeline.c           |   4 +
>   app/test/test_table_ports.c              |   4 +
>   app/test/test_table_tables.c             |   4 +
>   app/test/test_telemetry_data.c           |   2 +
>   app/test/test_timer_secondary.c          |  13 +++
>   app/test/test_trace.c                    |  32 +++++-
>   lib/eal/common/eal_common_errno.c        |   4 +
>   lib/eal/windows/eal_memalloc.c           |   6 +-
>   91 files changed, 1130 insertions(+), 156 deletions(-)
>   delete mode 100755 app/test/has-hugepage.sh
>   create mode 100644 app/test/has_hugepage.py

Tested-by: Pallavi Kadam <pallavi.kadam at intel.com>

>


More information about the dev mailing list