[dpdk-dev] [PATCH v16 0/9] app/testpmd: enable testpmd on Windows
Andrew Rybchenko
andrew.rybchenko at oktetlabs.ru
Thu Jul 1 15:49:29 CEST 2021
On 6/29/21 11:50 PM, Jie Zhou wrote:
> This patchset is to enable testpmd on windows. It mainly includes:
> - Enable building libraries on Windows that testpmd depends on
> - Add necessary macros required by testpmd on Windows in rte_os_shim.h
> - Add device event stubs for Windows
> - Resolve name collisions with Windows types
> - Add clock_gettime in testpmd on Windows
> - Fix parse_fec_mode to return fec_capa instead of mode
> - Replace POSIX specific codes
> - Disable unsupported Apps build on Windows
> - Enable testpmd build on Windows
>
> Future work:
> - Some issues discovered at validation need further investigations
> * Perf inconsistency: TPUT fluctuated significantly from runs
> * After traffic stop, port stats shows pps being 0 while bps not
> * mempool allocation only succeed with native. Other methods failed
> at rte_mem_lock/VirtualLock.
> - Hot-plug on Windows not supported yet
> - Support mempool allocation native mode only for now
>
> Tested-by: Pallavi Kadam <pallavi.kadam at intel.com>
> Acked-by: Pallavi Kadam <pallavi.kadam at intel.com>
> Acked-by: Tal Shnaiderman <talshn at nvidia.com>
>
> ---
> V16 changes:
> - Manually change Patch #9 From: email address to a proper one
>
> ---
> V15 changes:
> - Remove unnecessary Signed-off-by
> - Fix Patch #6 description to explain the root cause
> - Remove a trailing whitespace in Patch #4
>
> ---
> V14 changes:
> - Use macros with arguments
> - Add missing spaces around '&'
> - Remove unnecessary constants
> - Remove unnecessary returned result check on QueryPerformanceXXX
>
> ---
> V13 changes:
> - Resolve a patchset apply issue in patch2
>
> ---
> V12 changes:
> - Fix indentation
>
> ---
> V11 changes:
> - Add Acked-by from V9 and V10
> - Fix an error at ifndef'ing err flow for MP_ALLOC_NATIVE
>
> ---
> V10 changes:
> - Remove unneeded newline in config.c
> - Add Fixes: and Cc: Stable for parse_fec_mode fix
> - More appropriate and granular commit messages
> - Use US_PER_S
> - Put signal inside ifndef
>
> ---
> V9 changes:
> - Add clock_gettime for Windows into eal in rte_os_shim.h
>
> ---
> V8 changes:
> - Fix pointer location for _clock_gettime in config.h
>
> ---
> V7 changes:
> - Resolve V6 patch set applying conflicts due to recent upstream
> merges of linux testpmd changes, lib\meson.build format change,
> lib path changes, and sources change in meson.build under app\
> - Move Windows clock_gettime related code from config.c into
> config.h and leverage rte_os_shim.h for timespec_get
> - Fix a "BAD_SIGN_OFF" warning for patch "[v6,09/10] app/testpmd:
> fix unused function warnings"
>
> ---
> V6 changes:
> - Fix "unused function" compilation warning when neither i40e
> nor ixgbe presents
>
> ---
> V5 changes:
> - Remove macro trailing semicolon which missed to include in V4
>
> ---
> V4 changes:
> - Split previous patch into more granular patches
> - Remove the bypass of rte_eal_cleanup at exit
> - Move all added macros into rte_os_shim.h
> - Remove redundant headers after the rte_os_shim patch merge
> - Revert the mman APIs replacement to leave relevant part UNIX only
> - Keep Windows library list the same structure and order as the
> Unix library list in lib meson.build
>
> ---
> V3 changes:
> - Split one patch into patchset
> - Replace mman APIs with rte_mem_xxx APIs
> - Use OS independant rte_rand
> - Add device event stubs for Windows
> - Disable unsupported Apps
>
> ---
> V2 changes:
> - Fix commit message log long line issue
> - Fix coding style issues of pointer location
> - Fix indentation issue
> - Fix FreeBSD2101 compilation issue of AF_INET undeclared
> ---
>
>
> Jie Zhou (9):
> lib: build libraries that testpmd depends on
> eal/windows: add necessary macros
> eal/windows: add device event stubs
> eal/Windows: add clock_gettime on Windows
> app/testpmd: resolve name collisions
> app/testpmd: fix parse_fec_mode return type name
> app/testpmd: replace POSIX specific code
> app/testpmd: fix unused function warnings
> app/testpmd: enable building testpmd on Windows
>
> app/meson.build | 4 -
> app/pdump/meson.build | 6 +
> app/proc-info/meson.build | 6 +
> app/test-acl/meson.build | 6 +
> app/test-bbdev/meson.build | 6 +
> app/test-cmdline/meson.build | 6 +
> app/test-compress-perf/meson.build | 6 +
> app/test-crypto-perf/meson.build | 6 +
> app/test-eventdev/meson.build | 6 +
> app/test-fib/meson.build | 6 +
> app/test-flow-perf/meson.build | 6 +
> app/test-pipeline/meson.build | 6 +
> app/test-pmd/cmdline.c | 12 +-
> app/test-pmd/cmdline_flow.c | 514 +++++++++++++-------------
> app/test-pmd/config.c | 86 ++---
> app/test-pmd/csumonly.c | 2 +-
> app/test-pmd/icmpecho.c | 4 +-
> app/test-pmd/ieee1588fwd.c | 8 +-
> app/test-pmd/parameters.c | 11 +-
> app/test-pmd/testpmd.c | 21 +-
> app/test-pmd/testpmd.h | 5 +-
> app/test-regex/meson.build | 6 +
> app/test-sad/meson.build | 6 +
> app/test/meson.build | 6 +
> lib/eal/windows/eal_dev.c | 33 ++
> lib/eal/windows/include/rte_os_shim.h | 42 +++
> lib/eal/windows/meson.build | 1 +
> lib/meson.build | 7 +
> 28 files changed, 507 insertions(+), 327 deletions(-)
> create mode 100644 lib/eal/windows/eal_dev.c
>
Applied, thanks.
More information about the dev
mailing list