From patchwork Sat Oct 8 10:53:46 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117682 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 39F33A0542; Sat, 8 Oct 2022 12:55:53 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BA8E742B84; Sat, 8 Oct 2022 12:55:47 +0200 (CEST) Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by mails.dpdk.org (Postfix) with ESMTP id 21DF94021F for ; Sat, 8 Oct 2022 12:55:45 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4Ml25f269czHtfP; Sat, 8 Oct 2022 18:50:46 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:42 +0800 From: Dongdong Liu To: , , , , CC: "Min Hu (Connor)" , Dongdong Liu , Maryam Tahhan Subject: [PATCH v9 1/8] app/procinfo: add dpdk version dump Date: Sat, 8 Oct 2022 18:53:46 +0800 Message-ID: <20221008105353.18195-2-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems701-chm.china.huawei.com (10.3.19.178) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: "Min Hu (Connor)" Add support for dump dpdk version. The command is like: dpdk-proc-info -a xxxx:xx:xx.x --file-prefix=xxx -- --version Signed-off-by: Min Hu (Connor) Signed-off-by: Dongdong Liu Acked-by: Reshma Pattan --- app/proc-info/main.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/app/proc-info/main.c b/app/proc-info/main.c index d52ac8a038..d459c706d1 100644 --- a/app/proc-info/main.c +++ b/app/proc-info/main.c @@ -39,6 +39,7 @@ #include #include #include +#include /* Maximum long option length for option parsing. */ #define MAX_LONG_OPT_SZ 64 @@ -102,6 +103,8 @@ static char *mempool_iter_name; /**< Enable dump regs. */ static uint32_t enable_dump_regs; static char *dump_regs_file_prefix; +/* Enable show DPDK version. */ +static uint32_t enable_shw_version; /**< display usage */ static void @@ -130,6 +133,7 @@ proc_info_usage(const char *prgname) " --show-crypto: to display crypto information\n" " --show-ring[=name]: to display ring information\n" " --show-mempool[=name]: to display mempool information\n" + " --version: to display DPDK version\n" " --iter-mempool=name: iterate mempool elements to display content\n" " --dump-regs=file-prefix: dump registers to file with the file-prefix\n", prgname); @@ -242,6 +246,7 @@ proc_info_parse_args(int argc, char **argv) {"show-mempool", optional_argument, NULL, 0}, {"iter-mempool", required_argument, NULL, 0}, {"dump-regs", required_argument, NULL, 0}, + {"version", 0, NULL, 0}, {NULL, 0, 0, 0} }; @@ -313,7 +318,9 @@ proc_info_parse_args(int argc, char **argv) "dump-regs", MAX_LONG_OPT_SZ)) { enable_dump_regs = 1; dump_regs_file_prefix = optarg; - } + } else if (!strncmp(long_option[option_index].name, + "version", MAX_LONG_OPT_SZ)) + enable_shw_version = 1; break; case 1: /* Print xstat single value given by name*/ @@ -1476,6 +1483,14 @@ dump_regs(char *file_prefix) } } +static void +show_version(void) +{ + snprintf(bdr_str, MAX_STRING_LEN, " show - DPDK version "); + STATS_BDR_STR(10, bdr_str); + printf("DPDK version: %s\n", rte_version()); +} + int main(int argc, char **argv) { @@ -1589,6 +1604,8 @@ main(int argc, char **argv) iter_mempool(mempool_iter_name); if (enable_dump_regs) dump_regs(dump_regs_file_prefix); + if (enable_shw_version) + show_version(); RTE_ETH_FOREACH_DEV(i) rte_eth_dev_close(i); From patchwork Sat Oct 8 10:53:47 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117683 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3F496A0542; Sat, 8 Oct 2022 12:55:59 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9836342B93; Sat, 8 Oct 2022 12:55:48 +0200 (CEST) Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by mails.dpdk.org (Postfix) with ESMTP id D167540042 for ; Sat, 8 Oct 2022 12:55:44 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.53]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Ml27m0TRtzpVt7; Sat, 8 Oct 2022 18:52:36 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:42 +0800 From: Dongdong Liu To: , , , , CC: Dongdong Liu , Min Hu , Maryam Tahhan Subject: [PATCH v9 2/8] app/procinfo: add firmware version dump Date: Sat, 8 Oct 2022 18:53:47 +0800 Message-ID: <20221008105353.18195-3-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems701-chm.china.huawei.com (10.3.19.178) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Add support for dump ethdev firmware version. The command is like: dpdk-proc-info -a xxxx:xx:xx.x --file-prefix=xxx -- --firmware-version Signed-off-by: Min Hu (Connor) Signed-off-by: Dongdong Liu Acked-by: Reshma Pattan --- app/proc-info/main.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/app/proc-info/main.c b/app/proc-info/main.c index d459c706d1..7b407c47d0 100644 --- a/app/proc-info/main.c +++ b/app/proc-info/main.c @@ -45,6 +45,8 @@ #define MAX_LONG_OPT_SZ 64 #define MAX_STRING_LEN 256 +#define ETHDEV_FWVERS_LEN 32 + #define STATS_BDR_FMT "========================================" #define STATS_BDR_STR(w, s) printf("%.*s%s%.*s\n", w, \ STATS_BDR_FMT, s, w, STATS_BDR_FMT) @@ -105,6 +107,8 @@ static uint32_t enable_dump_regs; static char *dump_regs_file_prefix; /* Enable show DPDK version. */ static uint32_t enable_shw_version; +/* Enable show ethdev firmware version. */ +static uint32_t enable_shw_fw_version; /**< display usage */ static void @@ -134,6 +138,7 @@ proc_info_usage(const char *prgname) " --show-ring[=name]: to display ring information\n" " --show-mempool[=name]: to display mempool information\n" " --version: to display DPDK version\n" + " --firmware-version: to display ethdev firmware version\n" " --iter-mempool=name: iterate mempool elements to display content\n" " --dump-regs=file-prefix: dump registers to file with the file-prefix\n", prgname); @@ -247,6 +252,7 @@ proc_info_parse_args(int argc, char **argv) {"iter-mempool", required_argument, NULL, 0}, {"dump-regs", required_argument, NULL, 0}, {"version", 0, NULL, 0}, + {"firmware-version", 0, NULL, 0}, {NULL, 0, 0, 0} }; @@ -321,6 +327,9 @@ proc_info_parse_args(int argc, char **argv) } else if (!strncmp(long_option[option_index].name, "version", MAX_LONG_OPT_SZ)) enable_shw_version = 1; + else if (!strncmp(long_option[option_index].name, + "firmware-version", MAX_LONG_OPT_SZ)) + enable_shw_fw_version = 1; break; case 1: /* Print xstat single value given by name*/ @@ -1491,6 +1500,30 @@ show_version(void) printf("DPDK version: %s\n", rte_version()); } +static void +show_firmware_version(void) +{ + char fw_version[ETHDEV_FWVERS_LEN]; + uint16_t i; + + snprintf(bdr_str, MAX_STRING_LEN, " show - firmware version "); + STATS_BDR_STR(10, bdr_str); + + RTE_ETH_FOREACH_DEV(i) { + /* Skip if port is not in mask */ + if ((enabled_port_mask & (1ul << i)) == 0) + continue; + + if (rte_eth_dev_fw_version_get(i, fw_version, + ETHDEV_FWVERS_LEN) == 0) + printf("Ethdev port %u firmware version: %s\n", i, + fw_version); + else + printf("Ethdev port %u firmware version: %s\n", i, + "not available"); + } +} + int main(int argc, char **argv) { @@ -1606,6 +1639,8 @@ main(int argc, char **argv) dump_regs(dump_regs_file_prefix); if (enable_shw_version) show_version(); + if (enable_shw_fw_version) + show_firmware_version(); RTE_ETH_FOREACH_DEV(i) rte_eth_dev_close(i); From patchwork Sat Oct 8 10:53:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117684 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7B664A0542; Sat, 8 Oct 2022 12:56:04 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8964542BA6; Sat, 8 Oct 2022 12:55:49 +0200 (CEST) Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by mails.dpdk.org (Postfix) with ESMTP id D6C554021E for ; Sat, 8 Oct 2022 12:55:44 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.53]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Ml27m3JgdzpVv3; Sat, 8 Oct 2022 18:52:36 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:42 +0800 From: Dongdong Liu To: , , , , CC: "Min Hu (Connor)" , Dongdong Liu , Maryam Tahhan Subject: [PATCH v9 3/8] app/procinfo: add RSS RETA dump Date: Sat, 8 Oct 2022 18:53:48 +0800 Message-ID: <20221008105353.18195-4-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems701-chm.china.huawei.com (10.3.19.178) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: "Min Hu (Connor)" This patch add support for RSS reta dump. The command is like: dpdk-proc-info -a xxxx:xx:xx.x --file-prefix=xxx -- --show-rss-reta Signed-off-by: Min Hu (Connor) Signed-off-by: Dongdong Liu Acked-by: Reshma Pattan --- app/proc-info/main.c | 57 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/app/proc-info/main.c b/app/proc-info/main.c index 7b407c47d0..4021279b17 100644 --- a/app/proc-info/main.c +++ b/app/proc-info/main.c @@ -46,6 +46,8 @@ #define MAX_STRING_LEN 256 #define ETHDEV_FWVERS_LEN 32 +#define RTE_RETA_CONF_GROUP_NUM 32 +#define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) #define STATS_BDR_FMT "========================================" #define STATS_BDR_STR(w, s) printf("%.*s%s%.*s\n", w, \ @@ -109,6 +111,8 @@ static char *dump_regs_file_prefix; static uint32_t enable_shw_version; /* Enable show ethdev firmware version. */ static uint32_t enable_shw_fw_version; +/* Enable show RSS reta. */ +static uint32_t enable_shw_rss_reta; /**< display usage */ static void @@ -139,6 +143,7 @@ proc_info_usage(const char *prgname) " --show-mempool[=name]: to display mempool information\n" " --version: to display DPDK version\n" " --firmware-version: to display ethdev firmware version\n" + " --show-rss-reta: to display ports redirection table\n" " --iter-mempool=name: iterate mempool elements to display content\n" " --dump-regs=file-prefix: dump registers to file with the file-prefix\n", prgname); @@ -253,6 +258,7 @@ proc_info_parse_args(int argc, char **argv) {"dump-regs", required_argument, NULL, 0}, {"version", 0, NULL, 0}, {"firmware-version", 0, NULL, 0}, + {"show-rss-reta", 0, NULL, 0}, {NULL, 0, 0, 0} }; @@ -330,6 +336,9 @@ proc_info_parse_args(int argc, char **argv) else if (!strncmp(long_option[option_index].name, "firmware-version", MAX_LONG_OPT_SZ)) enable_shw_fw_version = 1; + else if (!strncmp(long_option[option_index].name, + "show-rss-reta", MAX_LONG_OPT_SZ)) + enable_shw_rss_reta = 1; break; case 1: /* Print xstat single value given by name*/ @@ -1524,6 +1533,52 @@ show_firmware_version(void) } } +static void +show_port_rss_reta_info(void) +{ + struct rte_eth_rss_reta_entry64 reta_conf[RTE_RETA_CONF_GROUP_NUM + 1]; + struct rte_eth_dev_info dev_info; + uint16_t i, idx, shift; + uint16_t num; + uint16_t id; + int ret; + + RTE_ETH_FOREACH_DEV(id) { + /* Skip if port is not in mask */ + if ((enabled_port_mask & (1ul << id)) == 0) + continue; + + snprintf(bdr_str, MAX_STRING_LEN, " Port %u ", id); + STATS_BDR_STR(5, bdr_str); + + ret = rte_eth_dev_info_get(id, &dev_info); + if (ret != 0) { + fprintf(stderr, "Error getting device info: %s\n", + strerror(-ret)); + return; + } + + num = DIV_ROUND_UP(dev_info.reta_size, RTE_ETH_RETA_GROUP_SIZE); + memset(reta_conf, 0, sizeof(reta_conf)); + for (i = 0; i < num; i++) + reta_conf[i].mask = ~0ULL; + + ret = rte_eth_dev_rss_reta_query(id, reta_conf, dev_info.reta_size); + if (ret != 0) { + fprintf(stderr, "Error getting RSS RETA info: %s\n", + strerror(-ret)); + return; + } + + for (i = 0; i < dev_info.reta_size; i++) { + idx = i / RTE_ETH_RETA_GROUP_SIZE; + shift = i % RTE_ETH_RETA_GROUP_SIZE; + printf("RSS RETA configuration: hash index=%u, queue=%u\n", + i, reta_conf[idx].reta[shift]); + } + } +} + int main(int argc, char **argv) { @@ -1641,6 +1696,8 @@ main(int argc, char **argv) show_version(); if (enable_shw_fw_version) show_firmware_version(); + if (enable_shw_rss_reta) + show_port_rss_reta_info(); RTE_ETH_FOREACH_DEV(i) rte_eth_dev_close(i); From patchwork Sat Oct 8 10:53:49 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117685 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4F49CA0542; Sat, 8 Oct 2022 12:56:09 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7954F42BB4; Sat, 8 Oct 2022 12:55:50 +0200 (CEST) Received: from szxga03-in.huawei.com (szxga03-in.huawei.com [45.249.212.189]) by mails.dpdk.org (Postfix) with ESMTP id 069CA40042 for ; Sat, 8 Oct 2022 12:55:45 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.55]) by szxga03-in.huawei.com (SkyGuard) with ESMTP id 4Ml28X0vhBzkXvv; Sat, 8 Oct 2022 18:53:16 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:43 +0800 From: Dongdong Liu To: , , , , CC: "Min Hu (Connor)" , Dongdong Liu , Maryam Tahhan Subject: [PATCH v9 4/8] app/procinfo: add module eeprom info dump Date: Sat, 8 Oct 2022 18:53:49 +0800 Message-ID: <20221008105353.18195-5-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems701-chm.china.huawei.com (10.3.19.178) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: "Min Hu (Connor)" This patch add support for module eeprom info dump. The command is like: dpdk-proc-info -a xxxx:xx:xx.x --file-prefix=xxx -- --show-module-eeprom Signed-off-by: Min Hu (Connor) Signed-off-by: Dongdong Liu Acked-by: Reshma Pattan --- app/proc-info/main.c | 52 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/app/proc-info/main.c b/app/proc-info/main.c index 4021279b17..90e7e41e38 100644 --- a/app/proc-info/main.c +++ b/app/proc-info/main.c @@ -48,6 +48,7 @@ #define ETHDEV_FWVERS_LEN 32 #define RTE_RETA_CONF_GROUP_NUM 32 #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) +#define EEPROM_DUMP_CHUNKSIZE 1024 #define STATS_BDR_FMT "========================================" #define STATS_BDR_STR(w, s) printf("%.*s%s%.*s\n", w, \ @@ -113,6 +114,8 @@ static uint32_t enable_shw_version; static uint32_t enable_shw_fw_version; /* Enable show RSS reta. */ static uint32_t enable_shw_rss_reta; +/* Enable show module eeprom information. */ +static uint32_t enable_shw_module_eeprom; /**< display usage */ static void @@ -144,6 +147,7 @@ proc_info_usage(const char *prgname) " --version: to display DPDK version\n" " --firmware-version: to display ethdev firmware version\n" " --show-rss-reta: to display ports redirection table\n" + " --show-module-eeprom: to display ports module eeprom information\n" " --iter-mempool=name: iterate mempool elements to display content\n" " --dump-regs=file-prefix: dump registers to file with the file-prefix\n", prgname); @@ -259,6 +263,7 @@ proc_info_parse_args(int argc, char **argv) {"version", 0, NULL, 0}, {"firmware-version", 0, NULL, 0}, {"show-rss-reta", 0, NULL, 0}, + {"show-module-eeprom", 0, NULL, 0}, {NULL, 0, 0, 0} }; @@ -339,6 +344,9 @@ proc_info_parse_args(int argc, char **argv) else if (!strncmp(long_option[option_index].name, "show-rss-reta", MAX_LONG_OPT_SZ)) enable_shw_rss_reta = 1; + else if (!strncmp(long_option[option_index].name, + "show-module-eeprom", MAX_LONG_OPT_SZ)) + enable_shw_module_eeprom = 1; break; case 1: /* Print xstat single value given by name*/ @@ -1579,6 +1587,48 @@ show_port_rss_reta_info(void) } } +static void +show_module_eeprom_info(void) +{ + unsigned char bytes_eeprom[EEPROM_DUMP_CHUNKSIZE]; + struct rte_eth_dev_module_info module_info; + struct rte_dev_eeprom_info eeprom_info; + uint16_t i; + int ret; + + RTE_ETH_FOREACH_DEV(i) { + /* Skip if port is not in mask */ + if ((enabled_port_mask & (1ul << i)) == 0) + continue; + + snprintf(bdr_str, MAX_STRING_LEN, " Port %u ", i); + STATS_BDR_STR(5, bdr_str); + + ret = rte_eth_dev_get_module_info(i, &module_info); + if (ret != 0) { + fprintf(stderr, "Module EEPROM information read error: %s\n", + strerror(-ret)); + return; + } + + eeprom_info.offset = 0; + eeprom_info.length = module_info.eeprom_len; + eeprom_info.data = bytes_eeprom; + + ret = rte_eth_dev_get_module_eeprom(i, &eeprom_info); + if (ret != 0) { + fprintf(stderr, "Module EEPROM read error: %s\n", + strerror(-ret)); + return; + } + + rte_hexdump(stdout, "hexdump", eeprom_info.data, + eeprom_info.length); + printf("Finish -- Port: %u MODULE EEPROM length: %d bytes\n", + i, eeprom_info.length); + } +} + int main(int argc, char **argv) { @@ -1698,6 +1748,8 @@ main(int argc, char **argv) show_firmware_version(); if (enable_shw_rss_reta) show_port_rss_reta_info(); + if (enable_shw_module_eeprom) + show_module_eeprom_info(); RTE_ETH_FOREACH_DEV(i) rte_eth_dev_close(i); From patchwork Sat Oct 8 10:53:50 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117686 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 90349A0542; Sat, 8 Oct 2022 12:56:14 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6C17042BB6; Sat, 8 Oct 2022 12:55:51 +0200 (CEST) Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by mails.dpdk.org (Postfix) with ESMTP id 5328B42BB0 for ; Sat, 8 Oct 2022 12:55:50 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.55]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Ml27t0XzXzpVp4; Sat, 8 Oct 2022 18:52:42 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:48 +0800 From: Dongdong Liu To: , , , , CC: Jie Hai , Dongdong Liu , Maryam Tahhan Subject: [PATCH v9 5/8] app/procinfo: add dump of Rx/Tx burst mode Date: Sat, 8 Oct 2022 18:53:50 +0800 Message-ID: <20221008105353.18195-6-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: Jie Hai Add dump of Rx/Tx burst mode in --show-port. Sample output changes: - rx queue - -- 0 descriptors 0/1024 drop_en rx buffer size 2048 \ mempool mb_pool_0 socket 0 + -- 0 descriptors 0/1024 drop_en rx buffer size 2048 \ mempool mb_pool_0 socket 0 burst mode : Vector Neon - tx queue - -- 0 descriptors 1024 thresh 32/928 \ offloads : MBUF_FAST_FREE + -- 0 descriptors 1024 thresh 32/928 \ offloads : MBUF_FAST_FREE burst mode : Scalar Signed-off-by: Jie Hai Signed-off-by: Dongdong Liu Acked-by: Reshma Pattan --- app/proc-info/main.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/app/proc-info/main.c b/app/proc-info/main.c index 90e7e41e38..67217ab68b 100644 --- a/app/proc-info/main.c +++ b/app/proc-info/main.c @@ -845,6 +845,7 @@ show_port(void) for (j = 0; j < dev_info.nb_rx_queues; j++) { struct rte_eth_rxq_info queue_info; + struct rte_eth_burst_mode mode; int count; ret = rte_eth_rx_queue_info_get(i, j, &queue_info); @@ -880,11 +881,18 @@ show_port(void) if (queue_info.conf.offloads != 0) show_offloads(queue_info.conf.offloads, rte_eth_dev_rx_offload_name); + if (rte_eth_rx_burst_mode_get(i, j, &mode) == 0) + printf(" burst mode : %s%s", + mode.info, + mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ? + " (per queue)" : ""); + printf("\n"); } for (j = 0; j < dev_info.nb_tx_queues; j++) { struct rte_eth_txq_info queue_info; + struct rte_eth_burst_mode mode; ret = rte_eth_tx_queue_info_get(i, j, &queue_info); if (ret != 0) @@ -905,6 +913,13 @@ show_port(void) if (queue_info.conf.offloads != 0) show_offloads(queue_info.conf.offloads, rte_eth_dev_tx_offload_name); + + if (rte_eth_tx_burst_mode_get(i, j, &mode) == 0) + printf(" burst mode : %s%s", + mode.info, + mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ? + " (per queue)" : ""); + printf("\n"); } From patchwork Sat Oct 8 10:53:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117687 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id CC64DA0542; Sat, 8 Oct 2022 12:56:19 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 61E4942BBB; Sat, 8 Oct 2022 12:55:53 +0200 (CEST) Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by mails.dpdk.org (Postfix) with ESMTP id BEEE140042 for ; Sat, 8 Oct 2022 12:55:50 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.57]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Ml27t3hwxzpVt7; Sat, 8 Oct 2022 18:52:42 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:48 +0800 From: Dongdong Liu To: , , , , CC: Dongdong Liu , Maryam Tahhan Subject: [PATCH v9 6/8] app/procinfo: fix some wrong doxygen syntax Date: Sat, 8 Oct 2022 18:53:51 +0800 Message-ID: <20221008105353.18195-7-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This code is to do cleanup for the wrong doxygen syntax comments The DPDK API is documented using doxygen comment annotations in the header files. The procinfo code seems no need to use doxygen comment. Signed-off-by: Dongdong Liu Acked-by: Reshma Pattan --- app/proc-info/main.c | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/app/proc-info/main.c b/app/proc-info/main.c index 67217ab68b..fe8285d2ce 100644 --- a/app/proc-info/main.c +++ b/app/proc-info/main.c @@ -54,33 +54,33 @@ #define STATS_BDR_STR(w, s) printf("%.*s%s%.*s\n", w, \ STATS_BDR_FMT, s, w, STATS_BDR_FMT) -/**< mask of enabled ports */ +/* mask of enabled ports */ static unsigned long enabled_port_mask; -/**< Enable stats. */ +/* Enable stats. */ static uint32_t enable_stats; -/**< Enable xstats. */ +/* Enable xstats. */ static uint32_t enable_xstats; -/**< Enable collectd format*/ +/* Enable collectd format */ static uint32_t enable_collectd_format; -/**< FD to send collectd format messages to STDOUT*/ +/* FD to send collectd format messages to STDOUT */ static int stdout_fd; -/**< Host id process is running on */ +/* Host id process is running on */ static char host_id[MAX_LONG_OPT_SZ]; #ifdef RTE_LIB_METRICS -/**< Enable metrics. */ +/* Enable metrics. */ static uint32_t enable_metrics; #endif -/**< Enable stats reset. */ +/* Enable stats reset. */ static uint32_t reset_stats; -/**< Enable xstats reset. */ +/* Enable xstats reset. */ static uint32_t reset_xstats; -/**< Enable memory info. */ +/* Enable memory info. */ static uint32_t mem_info; -/**< Enable displaying xstat name. */ +/* Enable displaying xstat name. */ static uint32_t enable_xstats_name; static char *xstats_name; -/**< Enable xstats by ids. */ +/* Enable xstats by ids. */ #define MAX_NB_XSTATS_IDS 1024 static uint32_t nb_xstats_ids; static uint64_t xstats_ids[MAX_NB_XSTATS_IDS]; @@ -88,24 +88,24 @@ static uint64_t xstats_ids[MAX_NB_XSTATS_IDS]; /* show border */ static char bdr_str[MAX_STRING_LEN]; -/**< Enable show port. */ +/* Enable show port. */ static uint32_t enable_shw_port; /* Enable show port private info. */ static uint32_t enable_shw_port_priv; -/**< Enable show tm. */ +/* Enable show tm. */ static uint32_t enable_shw_tm; -/**< Enable show crypto. */ +/* Enable show crypto. */ static uint32_t enable_shw_crypto; -/**< Enable show ring. */ +/* Enable show ring. */ static uint32_t enable_shw_ring; static char *ring_name; -/**< Enable show mempool. */ +/* Enable show mempool. */ static uint32_t enable_shw_mempool; static char *mempool_name; -/**< Enable iter mempool. */ +/* Enable iter mempool. */ static uint32_t enable_iter_mempool; static char *mempool_iter_name; -/**< Enable dump regs. */ +/* Enable dump regs. */ static uint32_t enable_dump_regs; static char *dump_regs_file_prefix; /* Enable show DPDK version. */ @@ -117,7 +117,7 @@ static uint32_t enable_shw_rss_reta; /* Enable show module eeprom information. */ static uint32_t enable_shw_module_eeprom; -/**< display usage */ +/* display usage */ static void proc_info_usage(const char *prgname) { From patchwork Sat Oct 8 10:53:52 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117689 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B341DA0542; Sat, 8 Oct 2022 12:56:29 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0645E42BCE; Sat, 8 Oct 2022 12:55:55 +0200 (CEST) Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by mails.dpdk.org (Postfix) with ESMTP id B156142BA0 for ; Sat, 8 Oct 2022 12:55:51 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.53]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4Ml26J4Tyhz1P6gY; Sat, 8 Oct 2022 18:51:20 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:49 +0800 From: Dongdong Liu To: , , , , CC: Dongdong Liu , Min Hu , Maryam Tahhan Subject: [PATCH v9 7/8] app/procinfo: support descriptor dump Date: Sat, 8 Oct 2022 18:53:52 +0800 Message-ID: <20221008105353.18195-8-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This patch support Rx/Tx descriptor dump The command is like: dpdk-proc-info -a xxxx:xx:xx.x --file-prefix=xxx -- --show-rx-descriptor queue_id:offset:num dpdk-proc-info -a xxxx:xx:xx.x --file-prefix=xxx -- --show-tx-descriptor queue_id:offset:num queue_id: A queue identifier on this port. offset: The offset of the descriptor starting from tail. num: The number of the descriptors to dump. Signed-off-by: Min Hu (Connor) Signed-off-by: Dongdong Liu --- app/proc-info/main.c | 80 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/app/proc-info/main.c b/app/proc-info/main.c index fe8285d2ce..3ab97a0127 100644 --- a/app/proc-info/main.c +++ b/app/proc-info/main.c @@ -54,6 +54,9 @@ #define STATS_BDR_STR(w, s) printf("%.*s%s%.*s\n", w, \ STATS_BDR_FMT, s, w, STATS_BDR_FMT) +typedef int (*desc_dump_t)(uint16_t port_id, uint16_t queue_id, + uint16_t offset, uint16_t num, FILE *file); + /* mask of enabled ports */ static unsigned long enabled_port_mask; /* Enable stats. */ @@ -117,6 +120,21 @@ static uint32_t enable_shw_rss_reta; /* Enable show module eeprom information. */ static uint32_t enable_shw_module_eeprom; +/* Enable dump Rx/Tx descriptor. */ +static uint32_t enable_shw_rx_desc_dump; +static uint32_t enable_shw_tx_desc_dump; + +#define DESC_PARAM_NUM 3 + +struct desc_param { + uint16_t queue_id; /* A queue identifier on this port. */ + uint16_t offset; /* The offset of the descriptor starting from tail. */ + uint16_t num; /* The number of the descriptors to dump. */ +}; + +static struct desc_param rx_desc_param; +static struct desc_param tx_desc_param; + /* display usage */ static void proc_info_usage(const char *prgname) @@ -148,6 +166,14 @@ proc_info_usage(const char *prgname) " --firmware-version: to display ethdev firmware version\n" " --show-rss-reta: to display ports redirection table\n" " --show-module-eeprom: to display ports module eeprom information\n" + " --show-rx-descriptor queue_id:offset:num to display ports Rx descriptor information. " + "queue_id: A Rx queue identifier on this port. " + "offset: The offset of the descriptor starting from tail. " + "num: The number of the descriptors to dump.\n" + " --show-tx-descriptor queue_id:offset:num to display ports Tx descriptor information. " + "queue_id: A Tx queue identifier on this port. " + "offset: The offset of the descriptor starting from tail. " + "num: The number of the descriptors to dump.\n" " --iter-mempool=name: iterate mempool elements to display content\n" " --dump-regs=file-prefix: dump registers to file with the file-prefix\n", prgname); @@ -200,6 +226,19 @@ parse_xstats_ids(char *list, uint64_t *ids, int limit) { return length; } +static int +parse_descriptor_param(char *list, struct desc_param *desc) +{ + int ret; + + ret = sscanf(list, "%hu:%hu:%hu", &desc->queue_id, &desc->offset, + &desc->num); + if (ret != DESC_PARAM_NUM) + return -EINVAL; + + return 0; +} + static int proc_info_preparse_args(int argc, char **argv) { @@ -264,6 +303,8 @@ proc_info_parse_args(int argc, char **argv) {"firmware-version", 0, NULL, 0}, {"show-rss-reta", 0, NULL, 0}, {"show-module-eeprom", 0, NULL, 0}, + {"show-rx-descriptor", required_argument, NULL, 1}, + {"show-tx-descriptor", required_argument, NULL, 1}, {NULL, 0, 0, 0} }; @@ -367,6 +408,24 @@ proc_info_parse_args(int argc, char **argv) return -1; } nb_xstats_ids = ret; + } else if (!strncmp(long_option[option_index].name, + "show-rx-descriptor", MAX_LONG_OPT_SZ)) { + int ret = parse_descriptor_param(optarg, + &rx_desc_param); + if (ret < 0) { + printf("Rx descriptor param parse error.\n"); + return -1; + } + enable_shw_rx_desc_dump = 1; + } else if (!strncmp(long_option[option_index].name, + "show-tx-descriptor", MAX_LONG_OPT_SZ)) { + int ret = parse_descriptor_param(optarg, + &tx_desc_param); + if (ret < 0) { + printf("Tx descriptor param parse error.\n"); + return -1; + } + enable_shw_tx_desc_dump = 1; } break; default: @@ -1644,6 +1703,21 @@ show_module_eeprom_info(void) } } +static void +nic_descriptor_display(uint16_t port_id, struct desc_param *desc, + desc_dump_t desc_dump) +{ + static const char *nic_desc_border = "###"; + uint16_t queue_id = desc->queue_id; + uint16_t offset = desc->offset; + uint16_t num = desc->num; + + printf("%s NIC descriptor for port %u %s\n", + nic_desc_border, port_id, nic_desc_border); + + desc_dump(port_id, queue_id, offset, num, stdout); +} + int main(int argc, char **argv) { @@ -1732,6 +1806,12 @@ main(int argc, char **argv) metrics_display(i); #endif + if (enable_shw_rx_desc_dump) + nic_descriptor_display(i, &rx_desc_param, + rte_eth_rx_descriptor_dump); + if (enable_shw_tx_desc_dump) + nic_descriptor_display(i, &tx_desc_param, + rte_eth_tx_descriptor_dump); } #ifdef RTE_LIB_METRICS From patchwork Sat Oct 8 10:53:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dongdong Liu X-Patchwork-Id: 117688 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A58BBA0542; Sat, 8 Oct 2022 12:56:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 35B8D42BBF; Sat, 8 Oct 2022 12:55:54 +0200 (CEST) Received: from szxga03-in.huawei.com (szxga03-in.huawei.com [45.249.212.189]) by mails.dpdk.org (Postfix) with ESMTP id 9CABE40042 for ; Sat, 8 Oct 2022 12:55:51 +0200 (CEST) Received: from kwepemi500017.china.huawei.com (unknown [172.30.72.56]) by szxga03-in.huawei.com (SkyGuard) with ESMTP id 4Ml28f4nzpzkXvS; Sat, 8 Oct 2022 18:53:22 +0800 (CST) Received: from localhost.localdomain (10.28.79.22) by kwepemi500017.china.huawei.com (7.221.188.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Sat, 8 Oct 2022 18:55:49 +0800 From: Dongdong Liu To: , , , , CC: Dongdong Liu , Maryam Tahhan Subject: [PATCH v9 8/8] doc: add some extended features in procinfo guide Date: Sat, 8 Oct 2022 18:53:53 +0800 Message-ID: <20221008105353.18195-9-liudongdong3@huawei.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20221008105353.18195-1-liudongdong3@huawei.com> References: <20220722091236.15469-1-liudongdong3@huawei.com> <20221008105353.18195-1-liudongdong3@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.28.79.22] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To kwepemi500017.china.huawei.com (7.221.188.110) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Add the below extended features in procinfo guide. --show-port-private --version --firmware-version --show-rss-reta --show-module-eeprom --show-rx-descriptor --show-tx-descriptor Signed-off-by: Dongdong Liu Acked-by: Reshma Pattan --- doc/guides/tools/proc_info.rst | 36 ++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/doc/guides/tools/proc_info.rst b/doc/guides/tools/proc_info.rst index 9772d97ef0..ad70bc47a5 100644 --- a/doc/guides/tools/proc_info.rst +++ b/doc/guides/tools/proc_info.rst @@ -17,9 +17,12 @@ The application has a number of command line options: .. code-block:: console - .//app/dpdk-procinfo -- -m | [-p PORTMASK] [--stats | --xstats | + .//app/dpdk-proc-info -- -m | [-p PORTMASK] [--stats | --xstats | --stats-reset | --xstats-reset] [ --show-port | --show-tm | --show-crypto | - --show-ring[=name] | --show-mempool[=name] | --iter-mempool=name ] + --show-ring[=name] | --show-mempool[=name] | --iter-mempool=name | + --show-port-private | --version | --firmware-version | --show-rss-reta | + --show-module-eeprom | --show-rx-descriptor queue_id:offset:num | + --show-tx-descriptor queue_id:offset:num] Parameters ~~~~~~~~~~ @@ -69,6 +72,35 @@ mempool. For invalid or no mempool name, whole list is dump. The iter-mempool parameter iterates and displays mempool elements specified by name. For invalid or no mempool name no elements are displayed. +**--show-port-private** +The show-port-private parameter displays ports private information. + +**--version** +The version parameter displays DPDK version. + +**--firmware-version** +The firmware-version parameter displays ethdev firmware version. + +**--show-rss-reta** +The show-rss-reta parameter displays ports rss redirection table. + +**--show-module-eeprom** +The show-module-eeprom parameter displays ports module eeprom information. + +**--show-rx-descriptor queue_id:offset:num** +The show-rx-descriptor parameter displays ports Rx descriptor information +specified by queue_id, offset and num. +queue_id: A Rx queue identifier on this port. +offset: The offset of the descriptor starting from tail. +num: The number of the descriptors to dump. + +**--show-tx-descriptor queue_id:offset:num** +The show-tx-descriptor parameter displays ports Tx descriptor information +specified by queue_id, offset and num. +queue_id: A Tx queue identifier on this port. +offset: The offset of the descriptor starting from tail. +num: The number of the descriptors to dump. + Limitations -----------