From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 00A59A04B5; Wed, 28 Oct 2020 00:23:58 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 985E72BD5; Wed, 28 Oct 2020 00:23:56 +0100 (CET) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 37B9B1D9E for ; Wed, 28 Oct 2020 00:23:54 +0100 (CET) Received: from Internal Mail-Server by MTLPINE1 (envelope-from ophirmu@nvidia.com) with SMTP; 28 Oct 2020 01:23:53 +0200 Received: from nvidia.com (pegasus05.mtr.labs.mlnx [10.210.16.100]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 09RNNrrC026642; Wed, 28 Oct 2020 01:23:53 +0200 From: Ophir Munk To: dev@dpdk.org, Raslan Darawsheh Cc: Ophir Munk , Matan Azrad , Tal Shnaiderman , Thomas Monjalon Date: Tue, 27 Oct 2020 23:22:23 +0000 Message-Id: <20201027232335.31427-1-ophirmu@nvidia.com> X-Mailer: git-send-email 2.8.4 Subject: [dpdk-dev] [PATCH v1 00/72] mlx5 Windows support - part #5 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" This patch series is part of preparing mlx5 PMD to compile and run under Windows OS. Part #5 v1: initial version Ophir Munk (46): net/mlx5: fix flow sample definitions net/mlx5/linux: extend device attributes getter net/mlx5: remove Linux files from Windows compilation net/mlx5: fix freeing packet pacing net/mlx5: replace Linux sleep with rte sleep net/mlx5: define mprq functions as static inline net/mlx5: do not define static_assert in Windows net/mlx5: move static_assert calls to global scope net/mlx5: wrap glue alloc/dealloc PD with OS calls net/mlx5: fix adding destroy flow action wrapper common/mlx5: add definition HAVE_INFINIBAND_VERBS_H common/mlx5/linux: handle memory allocations with alignment common/mlx5/windows: handle memory allocations with alignment mlx5/windows: add initialization routine for external lib mlx5/windows: generate file mlx5_autoconf.h common/mlx5/windows: add getter functions net/mlx5: update MR prototypes for DevX common/mlx5/windows: add OS reg/dereg MR drivers/common: enable Windows common mlx5 compilation net/mlx5/windows: implement device attribute getter net/mlx5/windows: add mlx5_os.c stubs net/mlx5: refactor eth dev ops for Windows common/mlx5/windows: add missing DV and IBV definitions mlx5/windows: add mlx5_os header file under net net/mlx5/windows: add pthread initializer definition net/mlx5/windows: define epoll API to do nothing net/mlx5/windows: define errno ETOOMANYREFS common/mlx5: add rte compatibility header file common/mlx5/windows: add DevX UAR getters net/mlx5/windows: add memory region callbacks net/mlx5/windows: add stubs for MP requests net/mlx5/windows: add ethdev stub operations net/mlx5/windws: add VLAN stubs net/mlx5: exclude rte_intr_callback_register call net/mlx5/windows: support open device net/mlx5/windws: spawn eth devices net/mlx5/linux: wrap adjust flow priority with OS calls net/mlx5/linux: add OS default miss flow action net/mlx5/linux: fix add OS dest_devx_tir action drivers/net: enable Windows net/mlx5 compilation net/mlx5/windows: introduce flow support net/mlx5/windows: create flow matcher object net/mlx5/windows: create flow action dest TIR object net/mlx5/windows: create flow rule net/mlx5: use HAVE_INFINIBAND_VERBS_H in shared code net/mlx5: fix separating eth_dev_ops per OS Tal Shnaiderman (26): mlx5: fix relaxed ordering DevX flow net/mlx5: fix folding constant array error net/mlx5: wrap glue reg/dereg UMEM with OS calls common/mlx5/linux: wrap event channel APIs with OS calls common/mlx5: add Windows exports file common/mlx5: extend DevX query hca attributes command common/mlx5: add DevX alloc PD command common/mlx5/windows: add glue functions APIs mlx5/windows: add mlx5 meson file common/mlx5/windows: extend PRM match_param_bits struct common/mlx5/windows: add OS alloc/dealloc pd common/mlx5/windows: add OS umem reg/dereg API net/mlx5/windows: implement mlx5 mac addr add common/mlx5/windows: wrap event channel APIs with OS calls net/mlx5/windows: support get mac net/mlx5/windows: support link update net/mlx5/windows: support read clock net/mlx5/windows: support get mtu net/mlx5/windows: support get interface name net/mlx5/windows: support is removed net/mlx5/windows: support get pdn net/mlx5/windows: initial probing implementation net/mlx5/windows: support VF PCI address common/mlx5: fix Windows warnings on missing enum net/mlx5: fix Windows warnings on get_if_name mlx5: build pmd only with the clang compiler drivers/common/meson.build | 8 +- drivers/common/mlx5/linux/meson.build | 2 + drivers/common/mlx5/linux/mlx5_common_os.h | 83 ++ drivers/common/mlx5/meson.build | 4 +- drivers/common/mlx5/mlx5_common.c | 4 +- drivers/common/mlx5/mlx5_common_mp.h | 2 +- drivers/common/mlx5/mlx5_common_mr.h | 1 + drivers/common/mlx5/mlx5_devx_cmds.c | 54 +- drivers/common/mlx5/mlx5_devx_cmds.h | 17 +- drivers/common/mlx5/mlx5_malloc.c | 14 +- drivers/common/mlx5/mlx5_prm.h | 94 ++ drivers/common/mlx5/rte_common_mlx5_exports.def | 67 ++ drivers/common/mlx5/version.map | 1 + drivers/common/mlx5/windows/meson.build | 46 + drivers/common/mlx5/windows/mlx5_common_os.c | 209 ++++ drivers/common/mlx5/windows/mlx5_common_os.h | 257 +++++ drivers/common/mlx5/windows/mlx5_glue.c | 354 +++++++ drivers/common/mlx5/windows/mlx5_glue.h | 60 ++ drivers/common/mlx5/windows/mlx5_win_defs.h | 250 +++++ drivers/common/mlx5/windows/mlx5_win_ext.h | 46 + drivers/net/meson.build | 9 +- drivers/net/mlx5/linux/mlx5_flow_os.h | 62 ++ drivers/net/mlx5/linux/mlx5_os.c | 175 +--- drivers/net/mlx5/linux/mlx5_os.h | 4 - drivers/net/mlx5/linux/mlx5_verbs.c | 2 +- drivers/net/mlx5/linux/mlx5_verbs.h | 8 +- drivers/net/mlx5/meson.build | 20 +- drivers/net/mlx5/mlx5.c | 168 +++- drivers/net/mlx5/mlx5.h | 25 +- drivers/net/mlx5/mlx5_defs.h | 7 +- drivers/net/mlx5/mlx5_devx.c | 39 +- drivers/net/mlx5/mlx5_flow.c | 26 +- drivers/net/mlx5/mlx5_flow.h | 16 +- drivers/net/mlx5/mlx5_flow_dv.c | 53 +- drivers/net/mlx5/mlx5_flow_verbs.c | 6 + drivers/net/mlx5/mlx5_rxq.c | 71 -- drivers/net/mlx5/mlx5_rxtx.c | 98 +- drivers/net/mlx5/mlx5_rxtx.h | 73 +- drivers/net/mlx5/mlx5_trigger.c | 3 +- drivers/net/mlx5/mlx5_txpp.c | 36 +- drivers/net/mlx5/windows/meson.build | 12 + drivers/net/mlx5/windows/mlx5_ethdev_os.c | 386 ++++++++ drivers/net/mlx5/windows/mlx5_flow_os.c | 237 +++++ drivers/net/mlx5/windows/mlx5_flow_os.h | 364 +++++++ drivers/net/mlx5/windows/mlx5_mp_os.c | 71 ++ drivers/net/mlx5/windows/mlx5_os.c | 1180 +++++++++++++++++++++++ drivers/net/mlx5/windows/mlx5_os.h | 27 + drivers/net/mlx5/windows/mlx5_vlan_os.c | 83 ++ drivers/vdpa/mlx5/mlx5_vdpa_event.c | 7 +- drivers/vdpa/mlx5/mlx5_vdpa_lm.c | 3 +- drivers/vdpa/mlx5/mlx5_vdpa_mem.c | 3 +- 51 files changed, 4433 insertions(+), 414 deletions(-) create mode 100644 drivers/common/mlx5/rte_common_mlx5_exports.def create mode 100644 drivers/common/mlx5/windows/meson.build create mode 100644 drivers/common/mlx5/windows/mlx5_common_os.c create mode 100644 drivers/common/mlx5/windows/mlx5_common_os.h create mode 100644 drivers/common/mlx5/windows/mlx5_glue.c create mode 100644 drivers/common/mlx5/windows/mlx5_glue.h create mode 100644 drivers/common/mlx5/windows/mlx5_win_defs.h create mode 100644 drivers/common/mlx5/windows/mlx5_win_ext.h create mode 100644 drivers/net/mlx5/windows/meson.build create mode 100644 drivers/net/mlx5/windows/mlx5_ethdev_os.c create mode 100644 drivers/net/mlx5/windows/mlx5_flow_os.c create mode 100644 drivers/net/mlx5/windows/mlx5_flow_os.h create mode 100644 drivers/net/mlx5/windows/mlx5_mp_os.c create mode 100644 drivers/net/mlx5/windows/mlx5_os.c create mode 100644 drivers/net/mlx5/windows/mlx5_os.h create mode 100644 drivers/net/mlx5/windows/mlx5_vlan_os.c -- 2.8.4