From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6EA0CA0A0C; Thu, 1 Jul 2021 15:49:31 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 419A640141; Thu, 1 Jul 2021 15:49:31 +0200 (CEST) Received: from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113]) by mails.dpdk.org (Postfix) with ESMTP id D46C24003E; Thu, 1 Jul 2021 15:49:29 +0200 (CEST) Received: from [192.168.38.17] (aros.oktetlabs.ru [192.168.38.17]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by shelob.oktetlabs.ru (Postfix) with ESMTPSA id 49F6D7F529; Thu, 1 Jul 2021 16:49:29 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 49F6D7F529 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=oktetlabs.ru; s=default; t=1625147369; bh=ZZYj3XY8YS31KpnNojp49Vg14pC1B75Oh9t/AS84n30=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=NfXQTlfwe3i4dBQiuadTTzkf6weg5z3ABKOkKwhljY4zlWrhDTn9/aobVC3Zf6Cvz K4tDII2RwgdFaQUStEm/2opIuGv+1kTmGlXaw04YHNc8WMlgrpD9hduqvXWC6N+tsr H41/TsdGHk9NjvIGo2nBKcpdIpcB9uDLGb+Y3/jE= To: Jie Zhou , dev@dpdk.org Cc: dmitry.kozliuk@gmail.com, xiaoyun.li@intel.com, roretzla@microsoft.com, talshn@nvidia.com, pallavi.kadam@intel.com, thomas@monjalon.net, bruce.richardson@intel.com, ferruh.yigit@intel.com, konstantin.ananyev@intel.com, stable@dpdk.org References: <1624998226-12220-1-git-send-email-jizh@linux.microsoft.com> <1624999822-16149-1-git-send-email-jizh@linux.microsoft.com> From: Andrew Rybchenko Organization: OKTET Labs Message-ID: Date: Thu, 1 Jul 2021 16:49:29 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <1624999822-16149-1-git-send-email-jizh@linux.microsoft.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH v16 0/9] app/testpmd: enable testpmd on Windows X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 > Acked-by: Pallavi Kadam > Acked-by: Tal Shnaiderman > > --- > 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.