>> (Dynamic lib still not supported yet in DPDK Windows).

This is dependent on TLS support, where a workaround PoC is avail, but not yet 
upstreamed.

> > Windows DPDK library hasn't finished all its library/driver porting to 
> > Windows.

Our focus is primarily the DPDK libraries which support UVMS. 

> > f. With clang support on Windows, can we remove MSVC?

Please no.  We are actively working with the MSVC team to extend support for 
DPDKs dependencies


-----Original Message-----
From: William Tu <u9012...@gmail.com> 
Sent: Thursday, November 4, 2021 8:06 AM
To: thomas <tho...@monjalon.net>
Cc: <d...@openvswitch.org> <d...@openvswitch.org>; ovs-dev 
<ovs-dev@openvswitch.org>; Sergey Madaminov <sergey.madami...@gmail.com>; Omar 
Cardona <ocard...@microsoft.com>; Kadam, Pallavi <pallavi.ka...@intel.com>; blp 
<b...@cs.stanford.edu>; Ilya Maximets <i.maxim...@ovn.org>; Test 
<t...@vmware.com>; Dmitry Kozlyuk <dmitry.kozl...@gmail.com>; talshn 
<tal...@mellanox.com>
Subject: [EXTERNAL] Re: [ovs-dev] [PATCH] RFC: netdev-dpdk: Add Windows support.

On Thu, Nov 4, 2021 at 4:35 AM Thomas Monjalon <tho...@monjalon.net> wrote:
>
> 06/10/2021 19:00, William Tu:
> > The patch adds OVS-DPDK supports on Windows.
> [...]
> > Implementation on Windows
> > -------------------------
> > It's harder than I thought due to my Linux only background.
> > Sergey and I first need to add meson build support to OVS, in order 
> > to make compiling and linking to Windows DPDK library easier[2].
> > In this patch, we use clang compiler on Windows to compile DPDK and 
> > OVS, and OVS links to DPDK static library (Dynamic lib still not 
> > supported yet in DPDK Windows).
> >
> > Windows DPDK library hasn't finished all its library/driver porting 
> > to Windows. So a couple of DPDK library code used by OVS doesn't 
> > compile. For examples:
> >   1) ovs-numa.c: used to detect lcores used by DPDK.
> >   2) open_memstream, fopencookies: used to redirect DPDK logs.
> >   3) vhostuser doesn't support: used to connect VM/container.
> >   4) dpdk-socket-mem not support: configuration I simply remove them 
> > in this patch.
> > In the future, I will probably refactor or #ifdef.
>
> Yes please, removing code is clearly not the right direction :)
>
> [...]
> > Future Work
> > -----------
> > In priority ordering
> > a. Add CI or Dockerfile for building the code b. Performance 
> > numbers, compared with OVS kernel datapath c. Try rte_flow HW 
> > offload on Windows d. Resolve all the compiler warnings e. Refactor 
> > the vhostuser code
> >
> > Some thoughts:
> > f. With clang support on Windows, can we remove MSVC?
> >    so OVS will have less compiler-specific code, ex:
> >    include\openvswitch\compiler.h
> > g. DPDK starts to implement pthread in Windows, can
> >    OVS uses pthread library from DPDK, instead of pthreads4w?
>
> The thread API is not ready yet in DPDK.
> What would be the benefit for OVS to use the same pthread layer as DPDK?
> OVS needs to be able to compile without DPDK.

Hi Thomas,

Yes, you're right.
I was thinking about copying the pthread code from DPDK to OVS code base.
This removes the dependencies on pthreads4w.

I'm working on the RFC v2 patch, will send out this week.

Thanks for all the feedback!
William
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to