[dpdk-dev] DPDK Windows Community call - 28 May 2019

Ranjit Menon ranjit.menon at intel.com
Mon Jun 10 07:18:33 CEST 2019

Attendees: (present/accepted)
Cathal <cathal.ohare at intel.com>
Pallavi <pallavi.kadam at intel.com>
Ranjit <ranjit.menon at intel.com>
Thomas thomas at monjalon.net
Tal Shnaiderman <talshn at mellanox.com>
Raslan rasland at mellanox.com;
Harini harini.ramakrishnan at microsoft.com;
Omar Cardona <ocardona at microsoft.com>;
Rani Sharoni <ranish at mellanox.com>;

Adham Masarwah <adham at mellanox.com>
Eilon Greenstein <eilong at mellanox.com>
Yohad Tor <yohadt at mellanox.com>
Bruce <bruce.richardson at intel.com>       apologies
Anan Saif <anans at mellanox.com>;
Jeff jeffrey.tippet at microsoft.com;
Khoa khot at microsoft.com;
Nareshkumar nareshkumar.pbs at broadcom.com;
Haseeb Haseeb.Gani at cavium.com; hgani at marvell.com   apologies
   (need to move call time to accommodate attendance, options to follow)
Shahed Shaikh shshaikh at marvell.com;
Satish satishr at chelsio.com          hope to join our next call
Indranil indranil at chelsio.com      hope to join our next call
Ravi Anand  ravianan at cisco.com      hope to join our next call

1. Meeting request to move meeting to Tuesday, 1 hour later.
    New time works better for current attendees.
    Haseeb, Marvell: Hi Cathal, other days at this time would work for 
me. I have a weekly team meeting at this time. If possible please 
    Cathal, Intel: I’ll collect consensus to move call to encourage 
maximum number of attendee’s.

2. Thomas, Mellanox: Windows not currently in DPDK UNH community lab, 
but they do have plans to increase scope of the lab testing.
    Current Community lab is focused on unit testing.
    NXP/Mellanox/Intel HW is currently available in the lab.
    We need unit tests for windows.
    Tal (Mellanox) logged bug, requesting the addition of windows testing
    Community lab next meeting is 04-jun-19.

3. Harini, Microsoft: I’ve posted a blog on DPDK v19.05 release with 
Windows and inviting more participation in the community.
    Please amplify in your circles, if you can.

4. Thomas, Mellanox: Should we have a page with an up-to-date status of 
the work?
    Would be good to have an overview of the progress, even if it's as 
simple as a progress bar.
    Thomas guidance: public editable page + public info page for call 
out info on Windows Development progress.

5. Ranjit, Intel: Below is a list of directories, files or functions 
which we need to check to make basic DPDK work on Windows.
   If something is missing, please update.
   The goal of this list is to collect status on what is complete, and 
plan what should be done next.
   It will help to share the workload among all volunteers during the 
next few months.

                           - not ported to Windows
                        - not ported to Windows
                                  - not ported to Windows
                     - ported to Windows in 18.08** repo (using clang-cl)
                                       - ported to Windows in 18.08** 
repo (using clang-cl)
                                  - ported to Windows in 18.08**  repo 
(using clang-cl)
                     - ported to Windows in 18.08**  repo (using clang-cl)
                                      - ported to Windows in 18.08** 
repo (using clang-cl)
                               - ported to Windows in 18.08**  repo 
(using clang-cl)
                                    - ported to Windows in 18.08**  repo 
(using clang-cl)
                                      - ported to Windows in 18.08** 
repo (using clang-cl)
lib/librte_eal/common/include/eal_log.c (Pallavi working on this file)
lib/librte_eal/common/arch/x86/rte_cpuflags.c (Tal working on this file)
lib/librte_eal/common/arch/x86/rte_cycles.c (Tal working on this file)
lib/librte_eal/common/eal_common_options.c (Pallavi working on this)
  (Some header file issues working to create windows port. Is there a 
posix implementation for windows with an acceptable license? Ranjit to 
source some options and review licensing with Thomas)
  (part of file port available in "Helloworld" patch)
lib/librte_eal/windows/eal/eal_alarm.c                                 - 
ported to Windows in 18.08**  repo (using clang-cl)
             - not ported to Windows
lib/librte_eal/windows/eal/eal_debug.c                                 - 
part of file port available in "Helloworld" patch
                - not ported to Windows
            - ported to Windows in 18.08**  repo (using clang-cl)
                - part of file port available in "Helloworld" patch
                 - ported to Windows in 18.08**   repo (using clang-cl)
           - ported to Windows in 18.08**   repo (using clang-cl)
lib/librte_eal/windows/eal/eal_thread.c                                - 
part of file port available in "Helloworld" patch
- ported to Windows in 18.08**   repo (using clang-cl)

Other work listing:
6. Haseeb, Marvell: in the process of supporting Marvell FastlinQ cards 
on the 18.08 draft branch.
   The changes are done in netuio, pci and qede modules.
   We’re completing internal review and will be able to send the changes 
for review soon.

7. Ranjit/Pallavi, Intel: We may need to abstract out some common code, 
if it’s not supported on windows. One possible solution is to get 
someone to see if we need to create a posix common code and one for 
windows common code.
   Need to understand the blockers Pallavi has hit. (This could become a 
road block later - need to confirm the licensing are correct for usage)
   Is lib_bsd a possible source of header files with correct licensing?
   This is required for full EAL functionality.
   The community will give guidance on acceptability of proposed 
changes/next steps

   Please check this list (3rd party headers in windows draft repo: 
windpdk-v18.08-clang) and mention what is done or in progress.
The best would be to reference some patches or commits to help progress 
together as a community.
   pthread.h -> contains implementation
   sched.h -> contains implementation
   unistd.h -> contains implementation
   netinet/in.h -> contains implementation
   netinet/tcp.h -> contains only include guard
   sys/netbsd/queue.h -> contains implementation
   sys/cdefs.h -> contains only include guard

8. Ranjit, Intel: Meson/make - Output from ninja will get passed to CI
   reporting to display on patch status.
   Intel working on this. Hope to have it working soon.

9. Harini, Microsoft: MS Patches in preparation of Windows support for 
CXGBE is already available in 19.05 repo upstream.
   CXGBE PMD will compile fine against Windows DPDK using Intel C++ 
Compiler up to v19.02.
[PATCH 0/4] net/cxgbe: fix build for Microsoft Windows OS support (Rahul 
[PATCH 1/4] net/cxgbe: use relative paths for including header files 
(Rahul Lakkireddy)
[PATCH 2/4] net/cxgbe: fix macros related to logs for Windows (Rahul 
[PATCH 3/4] net/cxgbe: only redefine symbols when not available for 
Windows (Rahul Lakkireddy)

9. Ravi, Cisco: Ravi Anand team working with the PMD for the Cisco 
Virtual interface Cards.

10. Tal, Mellanox: For bus/pci : Can refer to windpdk-v18.08 branch in 
draft repo.
   Code there is built using clang and functional.
   (No meson support yet).
   Currently working on Ninja & meson compiler.
   Active, but hit some issues.
   Resolved by upgrading (able to debug: upgrade CLang to version 8.0.0) 
& recompiling.
   Now able to build in debug mode
   (DPDK.org guidance needs to be updated).
   For new patches from 19.08 onwards: use repo windpdk-next-dev (Harini 
is the maintainer).
   Windows will only use meson, going forward.
   Currently compiling with clang, but not with meson.

More information about the dev mailing list