Message ID | 20190301071847.13376-1-anand.rawat@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 30AC43256; Fri, 1 Mar 2019 08:18:51 +0100 (CET) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 8F4BB2B9E for <dev@dpdk.org>; Fri, 1 Mar 2019 08:18:49 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Feb 2019 23:18:48 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.58,426,1544515200"; d="scan'208";a="120044710" Received: from anandraw-devbx.amr.corp.intel.com ([10.19.242.57]) by orsmga006.jf.intel.com with ESMTP; 28 Feb 2019 23:18:48 -0800 From: Anand Rawat <anand.rawat@intel.com> To: dev@dpdk.org Date: Thu, 28 Feb 2019 23:18:41 -0800 Message-Id: <20190301071847.13376-1-anand.rawat@intel.com> X-Mailer: git-send-email 2.17.1.windows.2 Subject: [dpdk-dev] [PATCH 0/6] HelloWorld example for Windows X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
HelloWorld example for Windows
|
|
Message
Anand Rawat
March 1, 2019, 7:18 a.m. UTC
Helloworld example for Windows. Includes Windows-specific EAL changes and meson changes to build the code on Windows. Anand Rawat (6): eal: eal stub to add windows support eal: Add header files to support windows eal: Add headers for compatibility with windows environment eal: add minimum viable code for eal on windows examples: Add meson changes for windows doc: add documention for windows config/meson.build | 28 +- config/rte_config.h | 15 +- config/x86/meson.build | 14 +- doc/guides/index.rst | 1 + doc/guides/windows_gsg/build_dpdk.rst | 76 +++++ doc/guides/windows_gsg/index.rst | 14 + doc/guides/windows_gsg/intro.rst | 20 ++ examples/meson.build | 9 +- .../common/include/arch/x86/meson.build | 48 +-- .../include/arch/x86/winapp/rte_atomic.h | 19 ++ .../include/arch/x86/winapp/rte_pause.h | 22 ++ lib/librte_eal/common/meson.build | 161 +++++---- lib/librte_eal/meson.build | 10 +- lib/librte_eal/winapp/eal/eal.c | 79 +++++ lib/librte_eal/winapp/eal/eal_debug.c | 18 + lib/librte_eal/winapp/eal/eal_lcore.c | 90 +++++ lib/librte_eal/winapp/eal/eal_thread.c | 152 +++++++++ .../winapp/eal/include/exec-env/fnmatch.h | 26 ++ .../winapp/eal/include/exec-env/pthread.h | 19 ++ .../winapp/eal/include/exec-env/regex.h | 56 +++ .../winapp/eal/include/exec-env/rte_windows.h | 44 +++ .../winapp/eal/include/exec-env/sched.h | 41 +++ .../winapp/eal/include/exec-env/sys/queue.h | 320 ++++++++++++++++++ .../winapp/eal/include/exec-env/unistd.h | 7 + lib/librte_eal/winapp/eal/meson.build | 13 + lib/meson.build | 6 +- meson.build | 34 +- 27 files changed, 1212 insertions(+), 130 deletions(-) create mode 100644 doc/guides/windows_gsg/build_dpdk.rst create mode 100644 doc/guides/windows_gsg/index.rst create mode 100644 doc/guides/windows_gsg/intro.rst create mode 100644 lib/librte_eal/common/include/arch/x86/winapp/rte_atomic.h create mode 100644 lib/librte_eal/common/include/arch/x86/winapp/rte_pause.h create mode 100644 lib/librte_eal/winapp/eal/eal.c create mode 100644 lib/librte_eal/winapp/eal/eal_debug.c create mode 100644 lib/librte_eal/winapp/eal/eal_lcore.c create mode 100644 lib/librte_eal/winapp/eal/eal_thread.c create mode 100644 lib/librte_eal/winapp/eal/include/exec-env/fnmatch.h create mode 100644 lib/librte_eal/winapp/eal/include/exec-env/pthread.h create mode 100644 lib/librte_eal/winapp/eal/include/exec-env/regex.h create mode 100644 lib/librte_eal/winapp/eal/include/exec-env/rte_windows.h create mode 100644 lib/librte_eal/winapp/eal/include/exec-env/sched.h create mode 100644 lib/librte_eal/winapp/eal/include/exec-env/sys/queue.h create mode 100644 lib/librte_eal/winapp/eal/include/exec-env/unistd.h create mode 100644 lib/librte_eal/winapp/eal/meson.build
Comments
On Thu, Feb 28, 2019 at 11:18:41PM -0800, Anand Rawat wrote: > Helloworld example for Windows. > Includes Windows-specific EAL changes and meson > changes to build the code on Windows. > > Anand Rawat (6): > eal: eal stub to add windows support > eal: Add header files to support windows > eal: Add headers for compatibility with windows environment > eal: add minimum viable code for eal on windows > examples: Add meson changes for windows > doc: add documention for windows > Thanks for this, it's good to see some progress here with small managable patches. I've just tried this on my laptop using clang + meson + ninja. I see some warnings at the link phase due to unknown flags, but otherwise things compile and link ok and I get helloworld app running and printing hello from all cores. Specifying a coremask doesn't seem to work though - perhaps something to look at for a V2. Thanks, /Bruce
On Fri, Mar 1, 2019 at 2:48 PM Bruce Richardson <bruce.richardson@intel.com> wrote: > On Thu, Feb 28, 2019 at 11:18:41PM -0800, Anand Rawat wrote: > > Helloworld example for Windows. > > Includes Windows-specific EAL changes and meson > > changes to build the code on Windows. > > > > Anand Rawat (6): > > eal: eal stub to add windows support > > eal: Add header files to support windows > > eal: Add headers for compatibility with windows environment > > eal: add minimum viable code for eal on windows > > examples: Add meson changes for windows > > doc: add documention for windows > > > Thanks for this, it's good to see some progress here with small managable > patches. > > I've just tried this on my laptop using clang + meson + ninja. I see some > warnings at the link phase due to unknown flags, but otherwise things > compile and link ok and I get helloworld app running and printing hello > from all cores. Specifying a coremask doesn't seem to work though - perhaps > something to look at for a V2. > Some easy warnings to fix: [dmarchan@dmarchan dpdk]$ ./devtools/checkpatches.sh ### eal: eal stub to add windows support WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #402: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:9: +eal_cpu_core_id(unsigned lcore_id) total: 0 errors, 1 warnings, 461 lines checked Warning in /lib/librte_eal/winapp/eal/eal_debug.c: Using rte_panic/rte_exit ### eal: add minimum viable code for eal on windows WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #239: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:10: + unsigned numTotalProcessors; WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #240: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:11: + unsigned numProcessorSockets; WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #241: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:12: + unsigned numProcessorCores; WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #242: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:13: + unsigned reserved; WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #280: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:50: + unsigned lcore = 0; WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #281: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:51: + for (unsigned socket = 0; socket < WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #283: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:53: + for (unsigned core = 0; core < (win_cpu_map.numProcessorCores / WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #304: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:73: +eal_cpu_detected(unsigned lcore_id) WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #313: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:80: +eal_cpu_socket_id(unsigned lcore_id) WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #320: FILE: lib/librte_eal/winapp/eal/eal_lcore.c:87: +eal_cpu_core_id(unsigned lcore_id) WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #348: FILE: lib/librte_eal/winapp/eal/eal_thread.c:15: +RTE_DEFINE_PER_LCORE(unsigned, _lcore_id) = LCORE_ID_ANY; WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #356: FILE: lib/librte_eal/winapp/eal/eal_thread.c:23: +rte_eal_remote_launch(lcore_function_t *f, void *arg, unsigned slave_id) WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #388: FILE: lib/librte_eal/winapp/eal/eal_thread.c:55: +eal_thread_init_master(unsigned lcore_id) WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned' #406: FILE: lib/librte_eal/winapp/eal/eal_thread.c:73: + unsigned lcore_id; total: 0 errors, 14 warnings, 502 lines checked Warning in /lib/librte_eal/winapp/eal/eal.c: Using rte_panic/rte_exit 4/6 valid patches [dmarchan@dmarchan dpdk]$ ./devtools/check-git-log.sh Wrong headline uppercase: eal: Add header files to support windows eal: Add headers for compatibility with windows environment examples: Add meson changes for windows Wrong tag: Signed-off-by: Kadam, Pallavi <pallavi.kadam@intel.com> Signed-off-by: Kadam, Pallavi <pallavi.kadam@intel.com> Signed-off-by: Kadam, Pallavi <pallavi.kadam@intel.com> Signed-off-by: Kadam, Pallavi <pallavi.kadam@intel.com> Signed-off-by: Kadam, Pallavi <pallavi.kadam@intel.com> Signed-off-by: Kadam, Pallavi <pallavi.kadam@intel.com>
Sorry Bruce, wrong dest :-)
On 3/4/2019 2:13 AM, David Marchand wrote: > > > On Fri, Mar 1, 2019 at 2:48 PM Bruce Richardson > <bruce.richardson@intel.com <mailto:bruce.richardson@intel.com>> wrote: > > On Thu, Feb 28, 2019 at 11:18:41PM -0800, Anand Rawat wrote: > > Helloworld example for Windows. > > Includes Windows-specific EAL changes and meson > > changes to build the code on Windows. > > > > Anand Rawat (6): > > eal: eal stub to add windows support > > eal: Add header files to support windows > > eal: Add headers for compatibility with windows environment > > eal: add minimum viable code for eal on windows > > examples: Add meson changes for windows > > doc: add documention for windows > > > Thanks for this, it's good to see some progress here with small > managable > patches. > > I've just tried this on my laptop using clang + meson + ninja. I see > some > warnings at the link phase due to unknown flags, but otherwise things > compile and link ok and I get helloworld app running and printing hello > from all cores. Specifying a coremask doesn't seem to work though - > perhaps > something to look at for a V2. > > > Some easy warnings to fix: This will be fixed in v2.