From patchwork Thu Jun 25 13:30:34 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fady Bader X-Patchwork-Id: 72178 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id C5A7AA0350; Thu, 25 Jun 2020 15:31:34 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 333D31BE81; Thu, 25 Jun 2020 15:31:11 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 4420A1BE7D for ; Thu, 25 Jun 2020 15:31:10 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from fady@mellanox.com) with SMTP; 25 Jun 2020 16:31:04 +0300 Received: from l-wincomp04-vm.labs.mlnx (l-wincomp04-vm.mtl.labs.mlnx [10.237.1.5]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 05PDV4Km025704; Thu, 25 Jun 2020 16:31:04 +0300 From: Fady Bader To: dev@dpdk.org Cc: fady@mellanox.com, thomas@monjalon.net, tbashar@mellanox.com, talshn@mellanox.com, yohadt@mellanox.com, dmitry.kozliuk@gmail.com, harini.ramakrishnan@microsoft.com, ocardona@microsoft.com, ranjit.menon@intel.com, pallavi.kadam@intel.com, kevin.laatz@intel.com, ferruh.yigit@intel.com, arybchenko@solarflare.com Date: Thu, 25 Jun 2020 16:30:34 +0300 Message-Id: <20200625133038.25180-2-fady@mellanox.com> X-Mailer: git-send-email 2.16.1.windows.4 In-Reply-To: <20200625133038.25180-1-fady@mellanox.com> References: <20200625133038.25180-1-fady@mellanox.com> Subject: [dpdk-dev] [PATCH 1/5] eal: added interrupts empty stubs 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" The ethdev lib uses interrupts. Interrupts are not implemented for Windows. To solve this, empty interrupt stubs were added under Windows. Signed-off-by: Fady Bader --- lib/librte_eal/windows/eal_interrupts.c | 17 +++++++++++++++++ lib/librte_eal/windows/meson.build | 1 + 2 files changed, 18 insertions(+) create mode 100644 lib/librte_eal/windows/eal_interrupts.c diff --git a/lib/librte_eal/windows/eal_interrupts.c b/lib/librte_eal/windows/eal_interrupts.c new file mode 100644 index 0000000000..1e3c6d20d2 --- /dev/null +++ b/lib/librte_eal/windows/eal_interrupts.c @@ -0,0 +1,17 @@ +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright 2020 Mellanox Technologies, Ltd + */ +#include + +int +rte_intr_rx_ctl(struct rte_intr_handle *intr_handle, + int epfd, int op, unsigned int vec, void *data) +{ + RTE_SET_USED(intr_handle); + RTE_SET_USED(epfd); + RTE_SET_USED(op); + RTE_SET_USED(vec); + RTE_SET_USED(data); + + return -ENOTSUP; +} diff --git a/lib/librte_eal/windows/meson.build b/lib/librte_eal/windows/meson.build index 08c888e018..c5a19648d6 100644 --- a/lib/librte_eal/windows/meson.build +++ b/lib/librte_eal/windows/meson.build @@ -17,6 +17,7 @@ sources += files( 'eal_timer.c', 'fnmatch.c', 'getopt.c', + 'eal_interrupts.c', ) dpdk_conf.set10('RTE_EAL_NUMA_AWARE_HUGEPAGES', true) From patchwork Thu Jun 25 13:30:35 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fady Bader X-Patchwork-Id: 72181 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id ADCABA0350; Thu, 25 Jun 2020 15:32:12 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 443E01BEA7; Thu, 25 Jun 2020 15:31:16 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 54B221BE80 for ; Thu, 25 Jun 2020 15:31:10 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from fady@mellanox.com) with SMTP; 25 Jun 2020 16:31:04 +0300 Received: from l-wincomp04-vm.labs.mlnx (l-wincomp04-vm.mtl.labs.mlnx [10.237.1.5]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 05PDV4Kn025704; Thu, 25 Jun 2020 16:31:04 +0300 From: Fady Bader To: dev@dpdk.org Cc: fady@mellanox.com, thomas@monjalon.net, tbashar@mellanox.com, talshn@mellanox.com, yohadt@mellanox.com, dmitry.kozliuk@gmail.com, harini.ramakrishnan@microsoft.com, ocardona@microsoft.com, ranjit.menon@intel.com, pallavi.kadam@intel.com, kevin.laatz@intel.com, ferruh.yigit@intel.com, arybchenko@solarflare.com Date: Thu, 25 Jun 2020 16:30:35 +0300 Message-Id: <20200625133038.25180-3-fady@mellanox.com> X-Mailer: git-send-email 2.16.1.windows.4 In-Reply-To: <20200625133038.25180-1-fady@mellanox.com> References: <20200625133038.25180-1-fady@mellanox.com> Subject: [dpdk-dev] [PATCH 2/5] eal: updated export list for Windows 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" Added eal functions used by ethdev lib to the export list under Windows. Signed-off-by: Fady Bader --- lib/librte_eal/rte_eal_exports.def | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/librte_eal/rte_eal_exports.def b/lib/librte_eal/rte_eal_exports.def index 20f7346962..3b96bbc10d 100644 --- a/lib/librte_eal/rte_eal_exports.def +++ b/lib/librte_eal/rte_eal_exports.def @@ -29,6 +29,7 @@ EXPORTS rte_eal_tailq_register rte_eal_using_phys_addrs rte_free + rte_get_tsc_hz rte_hexdump rte_log rte_malloc @@ -148,3 +149,12 @@ EXPORTS rte_mem_page_size rte_mem_unmap rte_rand + + rte_class_register + rte_devargs_parse + rte_class_find_by_name + rte_socket_id + rte_strerror + rte_intr_rx_ctl + rte_log_register + rte_log_set_level \ No newline at end of file From patchwork Thu Jun 25 13:30:36 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fady Bader X-Patchwork-Id: 72182 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id BB414A0350; Thu, 25 Jun 2020 15:32:21 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 84AFC1BEAF; Thu, 25 Jun 2020 15:31:17 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 61EA61BE81 for ; Thu, 25 Jun 2020 15:31:10 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from fady@mellanox.com) with SMTP; 25 Jun 2020 16:31:04 +0300 Received: from l-wincomp04-vm.labs.mlnx (l-wincomp04-vm.mtl.labs.mlnx [10.237.1.5]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 05PDV4Ko025704; Thu, 25 Jun 2020 16:31:04 +0300 From: Fady Bader To: dev@dpdk.org Cc: fady@mellanox.com, thomas@monjalon.net, tbashar@mellanox.com, talshn@mellanox.com, yohadt@mellanox.com, dmitry.kozliuk@gmail.com, harini.ramakrishnan@microsoft.com, ocardona@microsoft.com, ranjit.menon@intel.com, pallavi.kadam@intel.com, kevin.laatz@intel.com, ferruh.yigit@intel.com, arybchenko@solarflare.com Date: Thu, 25 Jun 2020 16:30:36 +0300 Message-Id: <20200625133038.25180-4-fady@mellanox.com> X-Mailer: git-send-email 2.16.1.windows.4 In-Reply-To: <20200625133038.25180-1-fady@mellanox.com> References: <20200625133038.25180-1-fady@mellanox.com> Subject: [dpdk-dev] [PATCH 3/5] ethdev: remove structs from export list 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" Some ethdev structs were present in ethdev export list. There structs were removed from the export list. Signed-off-by: Fady Bader --- lib/librte_ethdev/rte_ethdev_version.map | 2 -- 1 file changed, 2 deletions(-) diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map index 7155056045..eb36766dcd 100644 --- a/lib/librte_ethdev/rte_ethdev_version.map +++ b/lib/librte_ethdev/rte_ethdev_version.map @@ -89,7 +89,6 @@ DPDK_20.0 { rte_eth_iterator_next; rte_eth_led_off; rte_eth_led_on; - rte_eth_link; rte_eth_link_get; rte_eth_link_get_nowait; rte_eth_macaddr_get; @@ -104,7 +103,6 @@ DPDK_20.0 { rte_eth_rx_queue_setup; rte_eth_set_queue_rate_limit; rte_eth_speed_bitflag; - rte_eth_stats; rte_eth_stats_get; rte_eth_stats_reset; rte_eth_timesync_adjust_time; From patchwork Thu Jun 25 13:30:37 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fady Bader X-Patchwork-Id: 72179 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id BEE49A0350; Thu, 25 Jun 2020 15:31:46 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 71FEF1BE94; Thu, 25 Jun 2020 15:31:13 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 6A5761BE83 for ; Thu, 25 Jun 2020 15:31:10 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from fady@mellanox.com) with SMTP; 25 Jun 2020 16:31:05 +0300 Received: from l-wincomp04-vm.labs.mlnx (l-wincomp04-vm.mtl.labs.mlnx [10.237.1.5]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 05PDV4Kp025704; Thu, 25 Jun 2020 16:31:05 +0300 From: Fady Bader To: dev@dpdk.org Cc: fady@mellanox.com, thomas@monjalon.net, tbashar@mellanox.com, talshn@mellanox.com, yohadt@mellanox.com, dmitry.kozliuk@gmail.com, harini.ramakrishnan@microsoft.com, ocardona@microsoft.com, ranjit.menon@intel.com, pallavi.kadam@intel.com, kevin.laatz@intel.com, ferruh.yigit@intel.com, arybchenko@solarflare.com Date: Thu, 25 Jun 2020 16:30:37 +0300 Message-Id: <20200625133038.25180-5-fady@mellanox.com> X-Mailer: git-send-email 2.16.1.windows.4 In-Reply-To: <20200625133038.25180-1-fady@mellanox.com> References: <20200625133038.25180-1-fady@mellanox.com> Subject: [dpdk-dev] [PATCH 4/5] telemetry: implement empty stubs for Windows 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" Telemetry didn't compile under Windows. Empty stubs implementation was added for Windows. Signed-off-by: Fady Bader --- lib/librte_telemetry/rte_telemetry.h | 4 +++ lib/librte_telemetry/telemetry.c | 43 ++++++++++++++++++++++++++++++++- lib/librte_telemetry/telemetry_legacy.c | 26 +++++++++++++++++++- 3 files changed, 71 insertions(+), 2 deletions(-) diff --git a/lib/librte_telemetry/rte_telemetry.h b/lib/librte_telemetry/rte_telemetry.h index eb7f2c917c..bad255c385 100644 --- a/lib/librte_telemetry/rte_telemetry.h +++ b/lib/librte_telemetry/rte_telemetry.h @@ -5,6 +5,10 @@ #include #include +#ifdef RTE_EXEC_ENV_WINDOWS +#include +#endif + #ifndef _RTE_TELEMETRY_H_ #define _RTE_TELEMETRY_H_ diff --git a/lib/librte_telemetry/telemetry.c b/lib/librte_telemetry/telemetry.c index e7e3d861dd..3e202a089b 100644 --- a/lib/librte_telemetry/telemetry.c +++ b/lib/librte_telemetry/telemetry.c @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: BSD-3-Clause * Copyright(c) 2020 Intel Corporation */ - +#ifndef RTE_EXEC_ENV_WINDOWS #include #include #include @@ -20,6 +20,18 @@ #include "telemetry_data.h" #include "rte_telemetry_legacy.h" +#else + +#include + +#include "rte_telemetry.h" +#include "telemetry_json.h" +#include "telemetry_data.h" +#include "rte_telemetry_legacy.h" + +#endif + +#ifndef RTE_EXEC_ENV_WINDOWS #define MAX_CMD_LEN 56 #define MAX_HELP_LEN 64 #define MAX_OUTPUT_LEN (1024 * 16) @@ -46,10 +58,13 @@ static struct cmd_callback callbacks[TELEMETRY_MAX_CALLBACKS]; static int num_callbacks; /* How many commands are registered */ /* Used when accessing or modifying list of command callbacks */ static rte_spinlock_t callback_sl = RTE_SPINLOCK_INITIALIZER; +#endif int rte_telemetry_register_cmd(const char *cmd, telemetry_cb fn, const char *help) { +#ifndef RTE_EXEC_ENV_WINDOWS + int i = 0; if (strlen(cmd) >= MAX_CMD_LEN || fn == NULL || cmd[0] != '/' @@ -73,8 +88,19 @@ rte_telemetry_register_cmd(const char *cmd, telemetry_cb fn, const char *help) rte_spinlock_unlock(&callback_sl); return 0; + +#else + + RTE_SET_USED(cmd); + RTE_SET_USED(fn); + RTE_SET_USED(help); + + return 0; + +#endif } +#ifndef RTE_EXEC_ENV_WINDOWS static int list_commands(const char *cmd __rte_unused, const char *params __rte_unused, struct rte_tel_data *d) @@ -396,11 +422,14 @@ telemetry_v2_init(const char *runtime_dir, rte_cpuset_t *cpuset) return 0; } +#endif int32_t rte_telemetry_init(const char *runtime_dir, rte_cpuset_t *cpuset, const char **err_str) { +#ifndef RTE_EXEC_ENV_WINDOWS + if (telemetry_v2_init(runtime_dir, cpuset) != 0) { *err_str = telemetry_log_error; return -1; @@ -409,4 +438,16 @@ rte_telemetry_init(const char *runtime_dir, rte_cpuset_t *cpuset, *err_str = telemetry_log_error; } return 0; + +#else + + RTE_SET_USED(runtime_dir); + RTE_SET_USED(cpuset); + RTE_SET_USED(err_str); + + RTE_LOG(WARNING, TELEMETRY, "Telemetry is not supported on Windows.\n"); + + return 0; + +#endif } diff --git a/lib/librte_telemetry/telemetry_legacy.c b/lib/librte_telemetry/telemetry_legacy.c index a341fe4ebd..674f9c40ef 100644 --- a/lib/librte_telemetry/telemetry_legacy.c +++ b/lib/librte_telemetry/telemetry_legacy.c @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: BSD-3-Clause * Copyright(c) 2020 Intel Corporation */ - +#ifndef RTE_EXEC_ENV_WINDOWS #include #include #include @@ -15,6 +15,15 @@ #include "rte_telemetry_legacy.h" +#else + +#include + +#include "rte_telemetry_legacy.h" + +#endif +#ifndef RTE_EXEC_ENV_WINDOWS + #define MAX_LEN 128 #define BUF_SIZE 1024 #define CLIENTS_UNREG_ACTION "\"action\":2" @@ -48,12 +57,15 @@ struct json_command callbacks[TELEMETRY_LEGACY_MAX_CALLBACKS] = { }; int num_legacy_callbacks = 1; static rte_spinlock_t callback_sl = RTE_SPINLOCK_INITIALIZER; +#endif int rte_telemetry_legacy_register(const char *cmd, enum rte_telemetry_legacy_data_req data_req, telemetry_legacy_cb fn) { +#ifndef RTE_EXEC_ENV_WINDOWS + if (fn == NULL) return -EINVAL; if (num_legacy_callbacks >= (int) RTE_DIM(callbacks)) @@ -71,8 +83,19 @@ rte_telemetry_legacy_register(const char *cmd, rte_spinlock_unlock(&callback_sl); return 0; + +#else + + RTE_SET_USED(cmd); + RTE_SET_USED(data_req); + RTE_SET_USED(fn); + + return 0; + +#endif } +#ifndef RTE_EXEC_ENV_WINDOWS static int register_client(const char *cmd __rte_unused, const char *params, char *buffer __rte_unused, int buf_len __rte_unused) @@ -239,3 +262,4 @@ legacy_client_handler(void *sock_id) close(s); return NULL; } +#endif From patchwork Thu Jun 25 13:30:38 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fady Bader X-Patchwork-Id: 72180 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5A56AA0350; Thu, 25 Jun 2020 15:32:02 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id CFB101BE9C; Thu, 25 Jun 2020 15:31:14 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 729511BE85 for ; Thu, 25 Jun 2020 15:31:10 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from fady@mellanox.com) with SMTP; 25 Jun 2020 16:31:05 +0300 Received: from l-wincomp04-vm.labs.mlnx (l-wincomp04-vm.mtl.labs.mlnx [10.237.1.5]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 05PDV4Kq025704; Thu, 25 Jun 2020 16:31:05 +0300 From: Fady Bader To: dev@dpdk.org Cc: fady@mellanox.com, thomas@monjalon.net, tbashar@mellanox.com, talshn@mellanox.com, yohadt@mellanox.com, dmitry.kozliuk@gmail.com, harini.ramakrishnan@microsoft.com, ocardona@microsoft.com, ranjit.menon@intel.com, pallavi.kadam@intel.com, kevin.laatz@intel.com, ferruh.yigit@intel.com, arybchenko@solarflare.com Date: Thu, 25 Jun 2020 16:30:38 +0300 Message-Id: <20200625133038.25180-6-fady@mellanox.com> X-Mailer: git-send-email 2.16.1.windows.4 In-Reply-To: <20200625133038.25180-1-fady@mellanox.com> References: <20200625133038.25180-1-fady@mellanox.com> Subject: [dpdk-dev] [PATCH 5/5] ethdev: compiling ethdev under Windows 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" Compiling needed libraries for ethdev under Windows. Signed-off-by: Fady Bader --- lib/meson.build | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/meson.build b/lib/meson.build index 6317309ecf..34366cd614 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -37,9 +37,12 @@ libraries = [ if is_windows libraries = [ - 'kvargs','eal', + 'kvargs', + 'telemetry', # basic info querying + 'eal', 'ring', - 'mempool','mbuf', 'net', 'pci', ] # only supported libraries for windows + 'mempool','mbuf', 'net', 'meter', 'ethdev', 'pci', + ] # only supported libraries for windows endif default_cflags = machine_args