Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/139424/?format=api
http://patches.dpdk.org/api/patches/139424/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20240416152124.69590-6-stephen@networkplumber.org/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20240416152124.69590-6-stephen@networkplumber.org>", "list_archive_url": "https://inbox.dpdk.org/dev/20240416152124.69590-6-stephen@networkplumber.org", "date": "2024-04-16T15:19:31", "name": "[5/5] drivers/net: use RTE_DIM", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "9384709e85cfa4a9aea652fc4bbec84b502de1c8", "submitter": { "id": 27, "url": "http://patches.dpdk.org/api/people/27/?format=api", "name": "Stephen Hemminger", "email": "stephen@networkplumber.org" }, "delegate": { "id": 1, "url": "http://patches.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20240416152124.69590-6-stephen@networkplumber.org/mbox/", "series": [ { "id": 31757, "url": "http://patches.dpdk.org/api/series/31757/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=31757", "date": "2024-04-16T15:19:26", "name": "use RTE_DIM where possible", "version": 1, "mbox": "http://patches.dpdk.org/series/31757/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/139424/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/139424/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "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])\n\tby inbox.dpdk.org (Postfix) with ESMTP id AB41243E83;\n\tTue, 16 Apr 2024 17:22:12 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C894340695;\n\tTue, 16 Apr 2024 17:21:37 +0200 (CEST)", "from mail-pf1-f171.google.com (mail-pf1-f171.google.com\n [209.85.210.171])\n by mails.dpdk.org (Postfix) with ESMTP id 36EA84067B\n for <dev@dpdk.org>; Tue, 16 Apr 2024 17:21:33 +0200 (CEST)", "by mail-pf1-f171.google.com with SMTP id\n d2e1a72fcca58-6ee0642f718so3297513b3a.0\n for <dev@dpdk.org>; Tue, 16 Apr 2024 08:21:33 -0700 (PDT)", "from hermes.lan (204-195-96-226.wavecable.com. [204.195.96.226])\n by smtp.gmail.com with ESMTPSA id\n l17-20020a170903245100b001e80154a400sm213348pls.126.2024.04.16.08.21.31\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 16 Apr 2024 08:21:31 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1713280892;\n x=1713885692; darn=dpdk.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=xFZldrBvv+o0NLX2Xm+UCWEaTVh0OLbH05xGTJHlD4M=;\n b=YH6kuDAPNZLwB37zAOvIlHeNKJrVSXjAmEn5BmHWsKLeak6Qx0YBkLIeNqIzNvsJCi\n jFXzWw/UHCsRFCq0jO91WzZMb6SgFtviIhB1RPZYYUKMQ+LqyNEbMPICscTASYhzcLB3\n +Yx15GRYIQ4MUOB+h3LJX6+aBPev4NJgmzYfZ6rCSp564C3fGRApTznExbmX+s6ePyPx\n /7Vvoa1xE1KxZG5ptkfcsEly/UTvSYp4aKNUt4W0Xqx9DKTBJnqYRgHLqZSUOkDGfDHl\n L8p+zC84G5ojQ//81EnMUmtaQmNgto3RCNTZ88NuTbXtf35hbA5VSwCwllMSIpPlodmw\n BrPQ==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1713280892; x=1713885692;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=xFZldrBvv+o0NLX2Xm+UCWEaTVh0OLbH05xGTJHlD4M=;\n b=YLMuWu1mOAkE+tpVoKfbvjVpgTIW7DHGRBFcI1C+eAjfpz7wCL0//mJLW2mppm7tmY\n vbokOgpKV0i8O5Oq7A089jtN8jZLXMEaitWG/Nph1zz/rKord7e9CzfFkMhOGhp4AAF6\n NvjLlbpoPuLiIQVGuEShQKmVBHKDjL96SGpgqSC7u5UbRhkO6qpjI4durASuL0d8mGN4\n G2Rc5S+smLDW6waBzVqdH+HYEMwra9EbvM07JLgBfKl7/j36iCNFUgOSa0kVUefpYZ6m\n K7QGvzUKf1DElD77sQW9yNMnBYM6cKNWwxV3lrxmlBkLSki8/xN2IE3FscW+Fut2fldD\n tlJw==", "X-Gm-Message-State": "AOJu0YzLErREeCRGtqz+vuCY3wFXsfTl7S9TeMKSiI+oZfs3C4sBm6/i\n DFo72vB7EqjYVhclf6XTlKE1LV8xs4JvQP90QnvYvHO+ExCvuMecX6RYBox8el6whdLQJOY1yZ0\n S", "X-Google-Smtp-Source": "\n AGHT+IERUeJkvIVFCx70AvXeDofc/4dmErq/+Uy//MGXbKt4jdjf+fsQbmUVS9Xcpas8YDjFG25myA==", "X-Received": "by 2002:a17:902:b716:b0:1e2:a5db:30d1 with SMTP id\n d22-20020a170902b71600b001e2a5db30d1mr2573009pls.13.1713280892321;\n Tue, 16 Apr 2024 08:21:32 -0700 (PDT)", "From": "Stephen Hemminger <stephen@networkplumber.org>", "To": "dev@dpdk.org", "Cc": "Stephen Hemminger <stephen@networkplumber.org>,\n Shepard Siegel <shepard.siegel@atomicrules.com>,\n Ed Czeck <ed.czeck@atomicrules.com>,\n John Miller <john.miller@atomicrules.com>,\n Ajit Khaparde <ajit.khaparde@broadcom.com>,\n Somnath Kotur <somnath.kotur@broadcom.com>,\n Jingjing Wu <jingjing.wu@intel.com>, Rosen Xu <rosen.xu@intel.com>,\n Jiawen Wu <jiawenwu@trustnetic.com>, Harman Kalra <hkalra@marvell.com>,\n Jian Wang <jianwang@trustnetic.com>", "Subject": "[PATCH 5/5] drivers/net: use RTE_DIM", "Date": "Tue, 16 Apr 2024 08:19:31 -0700", "Message-ID": "<20240416152124.69590-6-stephen@networkplumber.org>", "X-Mailer": "git-send-email 2.43.0", "In-Reply-To": "<20240416152124.69590-1-stephen@networkplumber.org>", "References": "<20240416152124.69590-1-stephen@networkplumber.org>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "Use RTE_DIM instead of computing directly with sizeof.\nPatch automatically generated via cocci/rte_dim.cocci.\nCode in base/ subdirectory manually excluded.\n\nSigned-off-by: Stephen Hemminger <stephen@networkplumber.org>\n---\n drivers/net/ark/ark_pktchkr.c | 2 +-\n drivers/net/ark/ark_pktgen.c | 2 +-\n drivers/net/bnxt/bnxt_hwrm.c | 12 ++++++------\n drivers/net/e1000/em_rxtx.c | 3 +--\n drivers/net/iavf/iavf_ipsec_crypto.c | 3 +--\n drivers/net/igc/igc_ethdev.c | 3 +--\n drivers/net/ipn3ke/ipn3ke_tm.c | 3 +--\n drivers/net/ngbe/ngbe_ethdev.c | 6 ++----\n drivers/net/octeontx/octeontx_stats.h | 3 +--\n drivers/net/txgbe/txgbe_ethdev.c | 9 +++------\n drivers/net/txgbe/txgbe_ethdev_vf.c | 3 +--\n 11 files changed, 19 insertions(+), 30 deletions(-)", "diff": "diff --git a/drivers/net/ark/ark_pktchkr.c b/drivers/net/ark/ark_pktchkr.c\nindex e1f336c73c..63c298fca8 100644\n--- a/drivers/net/ark/ark_pktchkr.c\n+++ b/drivers/net/ark/ark_pktchkr.c\n@@ -320,7 +320,7 @@ options(const char *id)\n {\n \tunsigned int i;\n \n-\tfor (i = 0; i < sizeof(toptions) / sizeof(struct OPTIONS); i++) {\n+\tfor (i = 0; i < RTE_DIM(toptions); i++) {\n \t\tif (strcmp(id, toptions[i].opt) == 0)\n \t\t\treturn &toptions[i];\n \t}\ndiff --git a/drivers/net/ark/ark_pktgen.c b/drivers/net/ark/ark_pktgen.c\nindex 69ff7072b2..98e692c3ad 100644\n--- a/drivers/net/ark/ark_pktgen.c\n+++ b/drivers/net/ark/ark_pktgen.c\n@@ -297,7 +297,7 @@ options(const char *id)\n {\n \tunsigned int i;\n \n-\tfor (i = 0; i < sizeof(toptions) / sizeof(struct OPTIONS); i++) {\n+\tfor (i = 0; i < RTE_DIM(toptions); i++) {\n \t\tif (strcmp(id, toptions[i].opt) == 0)\n \t\t\treturn &toptions[i];\n \t}\ndiff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c\nindex 6ea7089a3f..68d7382806 100644\n--- a/drivers/net/bnxt/bnxt_hwrm.c\n+++ b/drivers/net/bnxt/bnxt_hwrm.c\n@@ -72,13 +72,13 @@ const char *media_type[] = { \"Unknown\", \"Twisted Pair\",\n \t\"Direct Attached Copper\", \"Fiber\"\n };\n \n-#define MAX_MEDIA_TYPE (sizeof(media_type) / sizeof(const char *))\n+#define MAX_MEDIA_TYPE RTE_DIM(media_type)\n \n const char *link_status_str[] = { \"Down. No link or cable detected.\",\n \t\"Down. No link, but a cable has been detected.\", \"Up.\",\n };\n \n-#define MAX_LINK_STR (sizeof(link_status_str) / sizeof(const char *))\n+#define MAX_LINK_STR RTE_DIM(link_status_str)\n \n const char *fec_mode[] = {\n \t\"No active FEC\",\n@@ -90,13 +90,13 @@ const char *fec_mode[] = {\n \t\"FEC RS(272,257)\"\n };\n \n-#define MAX_FEC_MODE (sizeof(fec_mode) / sizeof(const char *))\n+#define MAX_FEC_MODE RTE_DIM(fec_mode)\n \n const char *signal_mode[] = {\n \t\"NRZ\", \"PAM4\", \"PAM4_112\"\n };\n \n-#define MAX_SIG_MODE (sizeof(signal_mode) / sizeof(const char *))\n+#define MAX_SIG_MODE RTE_DIM(signal_mode)\n \n /* multi-purpose multi-key table container.\n * Add a unique entry for a new PHY attribs as per HW CAS.\n@@ -226,7 +226,7 @@ struct link_speeds2_tbl {\n \t},\n };\n \n-#define BNXT_SPEEDS2_TBL_SZ (sizeof(link_speeds2_tbl) / sizeof(*link_speeds2_tbl))\n+#define BNXT_SPEEDS2_TBL_SZ RTE_DIM(link_speeds2_tbl)\n \n /* In hwrm_phy_qcfg reports trained up speeds in link_speed(offset:0x8[31:16]) */\n struct link_speeds_tbl {\n@@ -269,7 +269,7 @@ struct link_speeds_tbl {\n \t},\n };\n \n-#define BNXT_SPEEDS_TBL_SZ (sizeof(link_speeds_tbl) / sizeof(*link_speeds_tbl))\n+#define BNXT_SPEEDS_TBL_SZ RTE_DIM(link_speeds_tbl)\n \n static const char *bnxt_get_xcvr_type(uint32_t xcvr_identifier_type_tx_lpi_timer)\n {\ndiff --git a/drivers/net/e1000/em_rxtx.c b/drivers/net/e1000/em_rxtx.c\nindex df5fbb7823..59d7793787 100644\n--- a/drivers/net/e1000/em_rxtx.c\n+++ b/drivers/net/e1000/em_rxtx.c\n@@ -1666,8 +1666,7 @@ em_rctl_bsize(__rte_unused enum e1000_mac_type hwtyp, uint32_t *bufsz)\n \t * ***************************************************************\n \t */\n \n-\tfor (i = 0; i != sizeof(bufsz_to_rctl) / sizeof(bufsz_to_rctl[0]);\n-\t\t\ti++) {\n+\tfor (i = 0; i != RTE_DIM(bufsz_to_rctl); i++) {\n \t\tif (rctl_bsize >= bufsz_to_rctl[i].bufsz) {\n \t\t\t*bufsz = bufsz_to_rctl[i].bufsz;\n \t\t\treturn bufsz_to_rctl[i].rctl;\ndiff --git a/drivers/net/iavf/iavf_ipsec_crypto.c b/drivers/net/iavf/iavf_ipsec_crypto.c\nindex 6fd45ff45f..d3ce666ef0 100644\n--- a/drivers/net/iavf/iavf_ipsec_crypto.c\n+++ b/drivers/net/iavf/iavf_ipsec_crypto.c\n@@ -1483,8 +1483,7 @@ iavf_ipsec_crypto_capabilities_get(void *device)\n \t * crypto capabilities, except for last element of the array which is\n \t * the null termination\n \t */\n-\tfor (i = 0; i < ((sizeof(iavf_security_capabilities) /\n-\t\t\tsizeof(iavf_security_capabilities[0])) - 1); i++) {\n+\tfor (i = 0; i < (RTE_DIM(iavf_security_capabilities) - 1); i++) {\n \t\tiavf_security_capabilities[i].crypto_capabilities =\n \t\t\tiavf_sctx->crypto_capabilities;\n \t}\ndiff --git a/drivers/net/igc/igc_ethdev.c b/drivers/net/igc/igc_ethdev.c\nindex 87d7f7caa0..28682c42ae 100644\n--- a/drivers/net/igc/igc_ethdev.c\n+++ b/drivers/net/igc/igc_ethdev.c\n@@ -188,8 +188,7 @@ static const struct rte_igc_xstats_name_off rte_igc_stats_strings[] = {\n \t\toffsetof(struct igc_hw_stats, icrxdmtc)},\n };\n \n-#define IGC_NB_XSTATS (sizeof(rte_igc_stats_strings) / \\\n-\t\tsizeof(rte_igc_stats_strings[0]))\n+#define IGC_NB_XSTATS RTE_DIM(rte_igc_stats_strings)\n \n static int eth_igc_configure(struct rte_eth_dev *dev);\n static int eth_igc_link_update(struct rte_eth_dev *dev, int wait_to_complete);\ndiff --git a/drivers/net/ipn3ke/ipn3ke_tm.c b/drivers/net/ipn3ke/ipn3ke_tm.c\nindex 0260227900..54687ce637 100644\n--- a/drivers/net/ipn3ke/ipn3ke_tm.c\n+++ b/drivers/net/ipn3ke/ipn3ke_tm.c\n@@ -67,8 +67,7 @@ struct ipn3ke_tm_shaper_params_range_type ipn3ke_tm_shaper_params_rang[] = {\n \t{512, 1023, 15, 32768, 67108864, 134086656},\n };\n \n-#define IPN3KE_TM_SHAPER_RANGE_NUM (sizeof(ipn3ke_tm_shaper_params_rang) / \\\n-\tsizeof(struct ipn3ke_tm_shaper_params_range_type))\n+#define IPN3KE_TM_SHAPER_RANGE_NUM RTE_DIM(ipn3ke_tm_shaper_params_rang)\n \n #define IPN3KE_TM_SHAPER_COMMITTED_RATE_MAX \\\n \t(ipn3ke_tm_shaper_params_rang[IPN3KE_TM_SHAPER_RANGE_NUM - 1].high)\ndiff --git a/drivers/net/ngbe/ngbe_ethdev.c b/drivers/net/ngbe/ngbe_ethdev.c\nindex 4cd07a0030..f10b9647fa 100644\n--- a/drivers/net/ngbe/ngbe_ethdev.c\n+++ b/drivers/net/ngbe/ngbe_ethdev.c\n@@ -238,8 +238,7 @@ static const struct rte_ngbe_xstats_name_off rte_ngbe_stats_strings[] = {\n \tHW_XSTAT_NAME(rx_xoff_packets, \"rx_flow_control_xoff_packets\"),\n };\n \n-#define NGBE_NB_HW_STATS (sizeof(rte_ngbe_stats_strings) / \\\n-\t\t\t sizeof(rte_ngbe_stats_strings[0]))\n+#define NGBE_NB_HW_STATS RTE_DIM(rte_ngbe_stats_strings)\n \n /* Per-queue statistics */\n #define QP_XSTAT(m) {#m, offsetof(struct ngbe_hw_stats, qp[0].m)}\n@@ -251,8 +250,7 @@ static const struct rte_ngbe_xstats_name_off rte_ngbe_qp_strings[] = {\n \tQP_XSTAT(rx_qp_mc_packets),\n };\n \n-#define NGBE_NB_QP_STATS (sizeof(rte_ngbe_qp_strings) / \\\n-\t\t\t sizeof(rte_ngbe_qp_strings[0]))\n+#define NGBE_NB_QP_STATS RTE_DIM(rte_ngbe_qp_strings)\n \n static inline int32_t\n ngbe_pf_reset_hw(struct ngbe_hw *hw)\ndiff --git a/drivers/net/octeontx/octeontx_stats.h b/drivers/net/octeontx/octeontx_stats.h\nindex 73ef5e93bb..746205bb85 100644\n--- a/drivers/net/octeontx/octeontx_stats.h\n+++ b/drivers/net/octeontx/octeontx_stats.h\n@@ -36,6 +36,5 @@ struct octeontx_xstats octeontx_bgx_xstats[] = {\n \tBGX_XSTAT(tx_pause_packets),\n };\n \n-#define NUM_BGX_XSTAT \\\n-\t(sizeof(octeontx_bgx_xstats) / sizeof(struct octeontx_xstats))\n+#define NUM_BGX_XSTAT RTE_DIM(octeontx_bgx_xstats)\n #endif /* __OCTEONTX_STATS_H__ */\ndiff --git a/drivers/net/txgbe/txgbe_ethdev.c b/drivers/net/txgbe/txgbe_ethdev.c\nindex b75e8898e2..fbf261bd0b 100644\n--- a/drivers/net/txgbe/txgbe_ethdev.c\n+++ b/drivers/net/txgbe/txgbe_ethdev.c\n@@ -269,8 +269,7 @@ static const struct rte_txgbe_xstats_name_off rte_txgbe_stats_strings[] = {\n \tHW_XSTAT_NAME(rx_xoff_packets, \"rx_flow_control_xoff_packets\"),\n };\n \n-#define TXGBE_NB_HW_STATS (sizeof(rte_txgbe_stats_strings) / \\\n-\t\t\t sizeof(rte_txgbe_stats_strings[0]))\n+#define TXGBE_NB_HW_STATS RTE_DIM(rte_txgbe_stats_strings)\n \n /* Per-priority statistics */\n #define UP_XSTAT(m) {#m, offsetof(struct txgbe_hw_stats, up[0].m)}\n@@ -290,8 +289,7 @@ static const struct rte_txgbe_xstats_name_off rte_txgbe_up_strings[] = {\n \tUP_XSTAT(tx_up_xon2off_packets),\n };\n \n-#define TXGBE_NB_UP_STATS (sizeof(rte_txgbe_up_strings) / \\\n-\t\t\t sizeof(rte_txgbe_up_strings[0]))\n+#define TXGBE_NB_UP_STATS RTE_DIM(rte_txgbe_up_strings)\n \n /* Per-queue statistics */\n #define QP_XSTAT(m) {#m, offsetof(struct txgbe_hw_stats, qp[0].m)}\n@@ -303,8 +301,7 @@ static const struct rte_txgbe_xstats_name_off rte_txgbe_qp_strings[] = {\n \tQP_XSTAT(rx_qp_mc_packets),\n };\n \n-#define TXGBE_NB_QP_STATS (sizeof(rte_txgbe_qp_strings) / \\\n-\t\t\t sizeof(rte_txgbe_qp_strings[0]))\n+#define TXGBE_NB_QP_STATS RTE_DIM(rte_txgbe_qp_strings)\n \n static inline int\n txgbe_is_sfp(struct txgbe_hw *hw)\ndiff --git a/drivers/net/txgbe/txgbe_ethdev_vf.c b/drivers/net/txgbe/txgbe_ethdev_vf.c\nindex f1341fbf7e..be96519b97 100644\n--- a/drivers/net/txgbe/txgbe_ethdev_vf.c\n+++ b/drivers/net/txgbe/txgbe_ethdev_vf.c\n@@ -112,8 +112,7 @@ static const struct rte_txgbe_xstats_name_off rte_txgbevf_stats_strings[] = {\n \t\t\toffsetof(struct txgbevf_hw_stats, qp[7].vfmprc)}\n };\n \n-#define TXGBEVF_NB_XSTATS (sizeof(rte_txgbevf_stats_strings) /\t\\\n-\t\tsizeof(rte_txgbevf_stats_strings[0]))\n+#define TXGBEVF_NB_XSTATS RTE_DIM(rte_txgbevf_stats_strings)\n \n /*\n * Negotiate mailbox API version with the PF.\n", "prefixes": [ "5/5" ] }{ "id": 139424, "url": "