patches for DPDK stable branches
 help / color / mirror / Atom feed
From: luca.boccassi@gmail.com
To: Huisong Li <lihuisong@huawei.com>
Cc: Min Hu <humin29@huawei.com>, dpdk stable <stable@dpdk.org>
Subject: patch 'net/hns3: fix insecure way to query MAC statistics' has been queued to stable release 20.11.5
Date: Fri, 18 Feb 2022 12:38:54 +0000	[thread overview]
Message-ID: <20220218123931.1749595-85-luca.boccassi@gmail.com> (raw)
In-Reply-To: <20220218123931.1749595-1-luca.boccassi@gmail.com>

Hi,

FYI, your patch has been queued to stable release 20.11.5

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/20/22. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/bluca/dpdk-stable

This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/b65114d8a356dab639016ecf64345b67e5642982

Thanks.

Luca Boccassi

---
From b65114d8a356dab639016ecf64345b67e5642982 Mon Sep 17 00:00:00 2001
From: Huisong Li <lihuisong@huawei.com>
Date: Fri, 28 Jan 2022 10:07:05 +0800
Subject: [PATCH] net/hns3: fix insecure way to query MAC statistics

[ upstream commit 6ee07e3cb589145d0f0826f918fd44eb3e160a08 ]

The query way of MAC statistics in HNS3 PF driver is as following:
1) get MAC statistics register number and calculate descriptor number.
2) use above descriptor number to send command to firmware to query all
   MAC statistics and copy to hns3_mac_stats struct in driver.

The preceding way does not verify the validity of the number of obtained
register, which may cause memory out-of-bounds.

Fixes: 8839c5e202f3 ("net/hns3: support device stats")

Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
---
 drivers/net/hns3/hns3_ethdev.c |   4 ++
 drivers/net/hns3/hns3_ethdev.h |   1 +
 drivers/net/hns3/hns3_stats.c  | 120 ++++++++++++++++-----------------
 drivers/net/hns3/hns3_stats.h  |  11 ++-
 4 files changed, 67 insertions(+), 69 deletions(-)

diff --git a/drivers/net/hns3/hns3_ethdev.c b/drivers/net/hns3/hns3_ethdev.c
index 8514d62617..3c8d41c6c8 100644
--- a/drivers/net/hns3/hns3_ethdev.c
+++ b/drivers/net/hns3/hns3_ethdev.c
@@ -3102,6 +3102,10 @@ hns3_get_capability(struct hns3_hw *hw)
 	}
 	hw->revision = revision;
 
+	ret = hns3_query_mac_stats_reg_num(hw);
+	if (ret)
+		return ret;
+
 	if (revision < PCI_REVISION_ID_HIP09_A) {
 		hns3_set_default_dev_specifications(hw);
 		hw->intr.mapping_mode = HNS3_INTR_MAPPING_VEC_RSV_ONE;
diff --git a/drivers/net/hns3/hns3_ethdev.h b/drivers/net/hns3/hns3_ethdev.h
index d6d9b0504a..5717f54441 100644
--- a/drivers/net/hns3/hns3_ethdev.h
+++ b/drivers/net/hns3/hns3_ethdev.h
@@ -431,6 +431,7 @@ struct hns3_hw {
 	struct hns3_tqp_stats tqp_stats;
 	/* Include Mac stats | Rx stats | Tx stats */
 	struct hns3_mac_stats mac_stats;
+	uint32_t mac_stats_reg_num;
 	uint32_t fw_version;
 
 	uint16_t num_msi;
diff --git a/drivers/net/hns3/hns3_stats.c b/drivers/net/hns3/hns3_stats.c
index fc577ddf45..04702f17d1 100644
--- a/drivers/net/hns3/hns3_stats.c
+++ b/drivers/net/hns3/hns3_stats.c
@@ -328,24 +328,21 @@ static const struct hns3_xstats_name_offset hns3_tx_queue_strings[] = {
 
 static void hns3_tqp_stats_clear(struct hns3_hw *hw);
 
-/*
- * Query all the MAC statistics data of Network ICL command ,opcode id: 0x0034.
- * This command is used before send 'query_mac_stat command', the descriptor
- * number of 'query_mac_stat command' must match with reg_num in this command.
- * @praram hw
- *   Pointer to structure hns3_hw.
- * @return
- *   0 on success.
- */
 static int
-hns3_update_mac_stats(struct hns3_hw *hw, const uint32_t desc_num)
+hns3_update_mac_stats(struct hns3_hw *hw)
 {
+#define HNS3_MAC_STATS_REG_NUM_PER_DESC	4
+
 	uint64_t *data = (uint64_t *)(&hw->mac_stats);
 	struct hns3_cmd_desc *desc;
+	uint32_t stats_iterms;
 	uint64_t *desc_data;
-	uint16_t i, k, n;
+	uint32_t desc_num;
+	uint16_t i;
 	int ret;
 
+	/* The first desc has a 64-bit header, so need to consider it. */
+	desc_num = hw->mac_stats_reg_num / HNS3_MAC_STATS_REG_NUM_PER_DESC + 1;
 	desc = rte_malloc("hns3_mac_desc",
 			  desc_num * sizeof(struct hns3_cmd_desc), 0);
 	if (desc == NULL) {
@@ -361,65 +358,71 @@ hns3_update_mac_stats(struct hns3_hw *hw, const uint32_t desc_num)
 		return ret;
 	}
 
-	for (i = 0; i < desc_num; i++) {
-		/* For special opcode 0034, only the first desc has the head */
-		if (i == 0) {
-			desc_data = (uint64_t *)(&desc[i].data[0]);
-			n = HNS3_RD_FIRST_STATS_NUM;
-		} else {
-			desc_data = (uint64_t *)(&desc[i]);
-			n = HNS3_RD_OTHER_STATS_NUM;
-		}
-
-		for (k = 0; k < n; k++) {
-			*data += rte_le_to_cpu_64(*desc_data);
-			data++;
-			desc_data++;
-		}
+	stats_iterms = RTE_MIN(sizeof(hw->mac_stats) / sizeof(uint64_t),
+			       hw->mac_stats_reg_num);
+	desc_data = (uint64_t *)(&desc[0].data[0]);
+	for (i = 0; i < stats_iterms; i++) {
+		/*
+		 * Data memory is continuous and only the first descriptor has a
+		 * header in this command.
+		 */
+		*data += rte_le_to_cpu_64(*desc_data);
+		data++;
+		desc_data++;
 	}
 	rte_free(desc);
 
 	return 0;
 }
 
-/*
- * Query Mac stat reg num command ,opcode id: 0x0033.
- * This command is used before send 'query_mac_stat command', the descriptor
- * number of 'query_mac_stat command' must match with reg_num in this command.
- * @praram rte_stats
- *   Pointer to structure rte_eth_stats.
- * @return
- *   0 on success.
- */
 static int
-hns3_mac_query_reg_num(struct rte_eth_dev *dev, uint32_t *desc_num)
+hns3_mac_query_reg_num(struct hns3_hw *hw, uint32_t *reg_num)
 {
-	struct hns3_adapter *hns = dev->data->dev_private;
-	struct hns3_hw *hw = &hns->hw;
+#define HNS3_MAC_STATS_RSV_REG_NUM_ON_HIP08_B	3
 	struct hns3_cmd_desc desc;
-	uint32_t *desc_data;
-	uint32_t reg_num;
 	int ret;
 
 	hns3_cmd_setup_basic_desc(&desc, HNS3_OPC_QUERY_MAC_REG_NUM, true);
 	ret = hns3_cmd_send(hw, &desc, 1);
+	if (ret) {
+		hns3_err(hw, "failed to query MAC statistic reg number, ret = %d",
+			 ret);
+		return ret;
+	}
+
+	/* The number of MAC statistics registers are provided by firmware. */
+	*reg_num = rte_le_to_cpu_32(desc.data[0]);
+	if (*reg_num == 0) {
+		hns3_err(hw, "MAC statistic reg number is invalid!");
+		return -ENODATA;
+	}
+
+	/*
+	 * If driver doesn't request the firmware to report more MAC statistics
+	 * iterms and the total number of MAC statistics registers by using new
+	 * method, firmware will only reports the number of valid statistics
+	 * registers. However, structure hns3_mac_stats in driver contains valid
+	 * and reserved statistics iterms. In this case, the total register
+	 * number must be added to three reserved statistics registers.
+	 */
+	*reg_num += HNS3_MAC_STATS_RSV_REG_NUM_ON_HIP08_B;
+
+	return 0;
+}
+
+int
+hns3_query_mac_stats_reg_num(struct hns3_hw *hw)
+{
+	uint32_t mac_stats_reg_num = 0;
+	int ret;
+
+	ret = hns3_mac_query_reg_num(hw, &mac_stats_reg_num);
 	if (ret)
 		return ret;
 
-	/*
-	 * The num of MAC statistics registers that are provided by IMP in this
-	 * version.
-	 */
-	desc_data = (uint32_t *)(&desc.data[0]);
-	reg_num = rte_le_to_cpu_32(*desc_data);
-
-	/*
-	 * The descriptor number of 'query_additional_mac_stat command' is
-	 * '1 + (reg_num-3)/4 + ((reg_num-3)%4 !=0)';
-	 * This value is 83 in this version
-	 */
-	*desc_num = 1 + ((reg_num - 3) >> 2) +
-		    (uint32_t)(((reg_num - 3) & 0x3) ? 1 : 0);
+	hw->mac_stats_reg_num = mac_stats_reg_num;
+	if (hw->mac_stats_reg_num > sizeof(hw->mac_stats) / sizeof(uint64_t))
+		hns3_warn(hw, "MAC stats reg number from firmware is greater than stats iterms in driver.");
 
 	return 0;
 }
@@ -429,15 +432,8 @@ hns3_query_update_mac_stats(struct rte_eth_dev *dev)
 {
 	struct hns3_adapter *hns = dev->data->dev_private;
 	struct hns3_hw *hw = &hns->hw;
-	uint32_t desc_num;
-	int ret;
 
-	ret = hns3_mac_query_reg_num(dev, &desc_num);
-	if (ret == 0)
-		ret = hns3_update_mac_stats(hw, desc_num);
-	else
-		hns3_err(hw, "Query mac reg num fail : %d", ret);
-	return ret;
+	return hns3_update_mac_stats(hw);
 }
 
 /* Get tqp stats from register */
diff --git a/drivers/net/hns3/hns3_stats.h b/drivers/net/hns3/hns3_stats.h
index 7b9b502a6b..436fac3b31 100644
--- a/drivers/net/hns3/hns3_stats.h
+++ b/drivers/net/hns3/hns3_stats.h
@@ -5,11 +5,6 @@
 #ifndef _HNS3_STATS_H_
 #define _HNS3_STATS_H_
 
-/* stats macro */
-#define HNS3_MAC_CMD_NUM		21
-#define HNS3_RD_FIRST_STATS_NUM		2
-#define HNS3_RD_OTHER_STATS_NUM		4
-
 /* TQP stats */
 struct hns3_tqp_stats {
 	uint64_t rcb_tx_ring_pktnum_rcd; /* Total num of transmitted packets */
@@ -22,6 +17,7 @@ struct hns3_tqp_stats {
 struct hns3_mac_stats {
 	uint64_t mac_tx_mac_pause_num;
 	uint64_t mac_rx_mac_pause_num;
+	uint64_t rsv0;
 	uint64_t mac_tx_pfc_pri0_pkt_num;
 	uint64_t mac_tx_pfc_pri1_pkt_num;
 	uint64_t mac_tx_pfc_pri2_pkt_num;
@@ -58,7 +54,7 @@ struct hns3_mac_stats {
 	uint64_t mac_tx_1519_2047_oct_pkt_num;
 	uint64_t mac_tx_2048_4095_oct_pkt_num;
 	uint64_t mac_tx_4096_8191_oct_pkt_num;
-	uint64_t rsv0;
+	uint64_t rsv1;
 	uint64_t mac_tx_8192_9216_oct_pkt_num;
 	uint64_t mac_tx_9217_12287_oct_pkt_num;
 	uint64_t mac_tx_12288_16383_oct_pkt_num;
@@ -85,7 +81,7 @@ struct hns3_mac_stats {
 	uint64_t mac_rx_1519_2047_oct_pkt_num;
 	uint64_t mac_rx_2048_4095_oct_pkt_num;
 	uint64_t mac_rx_4096_8191_oct_pkt_num;
-	uint64_t rsv1;
+	uint64_t rsv2;
 	uint64_t mac_rx_8192_9216_oct_pkt_num;
 	uint64_t mac_rx_9217_12287_oct_pkt_num;
 	uint64_t mac_rx_12288_16383_oct_pkt_num;
@@ -151,5 +147,6 @@ int hns3_stats_reset(struct rte_eth_dev *dev);
 void hns3_error_int_stats_add(struct hns3_adapter *hns, const char *err);
 int hns3_tqp_stats_init(struct hns3_hw *hw);
 void hns3_tqp_stats_uninit(struct hns3_hw *hw);
+int hns3_query_mac_stats_reg_num(struct hns3_hw *hw);
 
 #endif /* _HNS3_STATS_H_ */
-- 
2.30.2

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-18 12:37:41.150237151 +0000
+++ 0085-net-hns3-fix-insecure-way-to-query-MAC-statistics.patch	2022-02-18 12:37:37.774793796 +0000
@@ -1 +1 @@
-From 6ee07e3cb589145d0f0826f918fd44eb3e160a08 Mon Sep 17 00:00:00 2001
+From b65114d8a356dab639016ecf64345b67e5642982 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 6ee07e3cb589145d0f0826f918fd44eb3e160a08 ]
+
@@ -15 +16,0 @@
-Cc: stable@dpdk.org
@@ -27 +28 @@
-index 73bf209717..57f1572340 100644
+index 8514d62617..3c8d41c6c8 100644
@@ -30,3 +31,3 @@
-@@ -2733,6 +2733,10 @@ hns3_get_capability(struct hns3_hw *hw)
- 	if (ret)
- 		return ret;
+@@ -3102,6 +3102,10 @@ hns3_get_capability(struct hns3_hw *hw)
+ 	}
+ 	hw->revision = revision;
@@ -38 +39 @@
- 	if (hw->revision < PCI_REVISION_ID_HIP09_A) {
+ 	if (revision < PCI_REVISION_ID_HIP09_A) {
@@ -42 +43 @@
-index cf6380ebb2..ef028a7b2c 100644
+index d6d9b0504a..5717f54441 100644
@@ -45 +46 @@
-@@ -500,6 +500,7 @@ struct hns3_hw {
+@@ -431,6 +431,7 @@ struct hns3_hw {
@@ -50,2 +50,0 @@
- 	struct hns3_rx_missed_stats imissed_stats;
- 	uint64_t oerror_stats;
@@ -52,0 +52,2 @@
+ 
+ 	uint16_t num_msi;
@@ -54 +55 @@
-index 606b72509a..806720faff 100644
+index fc577ddf45..04702f17d1 100644
@@ -57 +58 @@
-@@ -307,24 +307,21 @@ static const struct hns3_xstats_name_offset hns3_imissed_stats_strings[] = {
+@@ -328,24 +328,21 @@ static const struct hns3_xstats_name_offset hns3_tx_queue_strings[] = {
@@ -90 +91 @@
-@@ -340,65 +337,71 @@ hns3_update_mac_stats(struct hns3_hw *hw, const uint32_t desc_num)
+@@ -361,65 +358,71 @@ hns3_update_mac_stats(struct hns3_hw *hw, const uint32_t desc_num)
@@ -205 +206 @@
-@@ -408,15 +411,8 @@ hns3_query_update_mac_stats(struct rte_eth_dev *dev)
+@@ -429,15 +432,8 @@ hns3_query_update_mac_stats(struct rte_eth_dev *dev)
@@ -221 +222 @@
- static int
+ /* Get tqp stats from register */
@@ -223 +224 @@
-index d1230f94cb..c81d351082 100644
+index 7b9b502a6b..436fac3b31 100644
@@ -264 +265,2 @@
-@@ -168,5 +164,6 @@ int hns3_stats_reset(struct rte_eth_dev *dev);
+@@ -151,5 +147,6 @@ int hns3_stats_reset(struct rte_eth_dev *dev);
+ void hns3_error_int_stats_add(struct hns3_adapter *hns, const char *err);
@@ -267 +268,0 @@
- int hns3_update_imissed_stats(struct hns3_hw *hw, bool is_clear);

  parent reply	other threads:[~2022-02-18 12:43 UTC|newest]

Thread overview: 228+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20220218123931.1749595-1-luca.boccassi@gmail.com>
2022-02-18 12:37 ` patch 'doc: replace deprecated distutils version parsing' " luca.boccassi
2022-02-18 12:37 ` patch 'maintainers: update for stable branches' " luca.boccassi
2022-02-18 12:37 ` patch 'doc: remove dependency on findutils on FreeBSD' " luca.boccassi
2022-02-18 12:37 ` patch 'bus/ifpga: remove useless check while browsing devices' " luca.boccassi
2022-02-18 12:37 ` patch 'dma/idxd: fix paths to driver sysfs directory' " luca.boccassi
2022-02-18 12:37 ` patch 'eal/linux: log hugepage create errors with filename' " luca.boccassi
2022-02-18 12:37 ` patch 'doc: fix dlb2 guide' " luca.boccassi
2022-02-18 12:37 ` patch 'examples/l3fwd: fix Rx burst size for event mode' " luca.boccassi
2022-02-18 12:37 ` patch 'examples/ipsec-secgw: fix eventdev start sequence' " luca.boccassi
2022-02-18 12:37 ` patch 'examples/ipsec-secgw: fix default flow rule creation' " luca.boccassi
2022-02-18 12:37 ` patch 'devtools: fix comment detection in forbidden token check' " luca.boccassi
2022-02-18 12:37 ` patch 'net/qede: fix redundant condition in debug code' " luca.boccassi
2022-02-18 12:37 ` patch 'net/ice: fix Tx checksum offload capability' " luca.boccassi
2022-02-18 12:37 ` patch 'net/ice: track DCF state of PF' " luca.boccassi
2022-02-18 12:37 ` patch 'net/ice: fix Tx checksum offload' " luca.boccassi
2022-02-18 12:37 ` patch 'net/ixgbe: add vector Rx parameter check' " luca.boccassi
2022-02-18 12:37 ` patch 'net/mlx5: fix assertion on flags set in packet mbuf' " luca.boccassi
2022-02-18 12:37 ` patch 'net/mlx5: fix RSS expansion with explicit next protocol' " luca.boccassi
2022-02-18 12:37 ` patch 'net/mlx5: fix GRE protocol type translation for Verbs' " luca.boccassi
2022-02-18 12:37 ` patch 'net/mlx5: relax headroom assertion' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: fix xstats names query overrun' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: fix multicast address set' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: fix multicast MAC restore during reset recovery' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: fix queue stop operation' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: restore RSS configuration after reset recovery' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: fix restoring VLAN filtering after " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: cap maximum number of unicast MAC addresses' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: add null check for mark table' " luca.boccassi
2022-02-18 12:37 ` patch 'net/bnxt: get maximum supported multicast filters count' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: fix handling of VF configuration change' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: fix PAM4 mask setting' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: fix xstats query' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: check VF representor pointer before access' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bonding: fix offloading configuration' " luca.boccassi
2022-02-18 12:38 ` patch 'app/testpmd: fix Tx scheduling interval' " luca.boccassi
2022-02-18 12:38 ` patch 'net/axgbe: use PCI root complex device to distinguish device' " luca.boccassi
2022-02-18 12:38 ` patch 'net/af_xdp: fix build with -Wunused-function' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bonding: fix mode type mismatch' " luca.boccassi
2022-02-18 12:38 ` patch 'app/testpmd: fix dereference before null check' " luca.boccassi
2022-02-18 12:38 ` patch 'app/testpmd: fix external buffer allocation' " luca.boccassi
2022-02-18 12:38 ` patch 'net/cxgbe: fix dangling pointer by mailbox access rework' " luca.boccassi
2022-02-18 12:38 ` patch 'net/dpaa2: fix unregistering interrupt handler' " luca.boccassi
2022-02-18 12:38 ` patch 'net/dpaa2: fix timestamping for IEEE1588' " luca.boccassi
2022-02-18 12:38 ` patch 'net/mlx5: fix maximum packet headers size for TSO' " luca.boccassi
2022-02-18 12:38 ` patch 'net/nfp: remove duplicated check when setting MAC address' " luca.boccassi
2022-02-18 12:38 ` patch 'net/nfp: remove useless range checks' " luca.boccassi
2022-02-18 12:38 ` patch 'net/sfc: validate queue span when parsing flow action RSS' " luca.boccassi
2022-02-18 12:38 ` patch 'raw/ifpga/base: fix SPI transaction' " luca.boccassi
2022-02-18 12:38 ` patch 'net/ice: fix link up when starting device' " luca.boccassi
2022-02-18 12:38 ` patch 'raw/ifpga: fix thread closing' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: fix check for autoneg enablement' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: handle ring cleanup in case of error' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: fix memzone allocation per VNIC' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bnxt: fix VF resource allocation strategy' " luca.boccassi
2022-02-18 12:38 ` patch 'raw/ifpga/base: fix port feature ID' " luca.boccassi
2022-02-18 12:38 ` patch 'net/memif: remove unnecessary Rx interrupt stub' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bonding: fix RSS with early configure' " luca.boccassi
2022-02-18 12:38 ` patch 'net/hns3: fix using enum as boolean' " luca.boccassi
2022-02-18 12:38 ` patch 'vdpa/mlx5: workaround queue stop with traffic' " luca.boccassi
2022-02-18 12:38 ` patch 'net/virtio: fix Tx queue 0 overriden by queue 128' " luca.boccassi
2022-02-18 12:38 ` patch 'vdpa/ifc: fix log info mismatch' " luca.boccassi
2022-02-18 12:38 ` patch 'net/virtio-user: fix resource leak on probing failure' " luca.boccassi
2022-02-18 12:38 ` patch 'net/virtio-user: check FD flags getting " luca.boccassi
2022-02-18 12:38 ` patch 'net/mlx5: fix mark enabling for Rx' " luca.boccassi
2022-02-18 12:38 ` patch 'net/mlx5: reject jump to root table' " luca.boccassi
2022-02-18 12:38 ` patch 'doc: update matching versions in ice guide' " luca.boccassi
2022-02-18 12:38 ` patch 'build: fix warnings when running external commands' " luca.boccassi
2022-02-18 12:38 ` patch 'build: fix warning about using -Wextra flag' " luca.boccassi
2022-02-18 13:13   ` Richardson, Bruce
2022-02-18 12:38 ` patch 'build: remove deprecated Meson functions' " luca.boccassi
2022-02-18 13:16   ` Richardson, Bruce
2022-02-21 10:56     ` Luca Boccassi
2022-02-21 11:51       ` Richardson, Bruce
2022-02-18 12:38 ` patch 'kni: fix ioctl signature' " luca.boccassi
2022-02-18 12:38 ` patch 'doc: fix KNI PMD name typo' " luca.boccassi
2022-02-18 12:38 ` patch 'ring: optimize corner case for enqueue/dequeue' " luca.boccassi
2022-02-18 12:38 ` patch 'ring: fix error code when creating ring' " luca.boccassi
2022-02-18 12:38 ` patch 'ring: fix overflow in memory size calculation' " luca.boccassi
2022-02-18 12:38 ` patch 'eal/windows: fix error code for not supported API' " luca.boccassi
2022-02-18 12:38 ` patch 'test/mem: fix error check' " luca.boccassi
2022-02-18 12:38 ` patch 'bus/dpaa: fix C++ include guard' " luca.boccassi
2022-02-18 12:38 ` patch 'net/cxgbe: remove useless " luca.boccassi
2022-02-18 12:38 ` patch 'net/dpaa2: " luca.boccassi
2022-02-18 12:38 ` patch 'eal/windows: " luca.boccassi
2022-02-18 12:38 ` patch 'net/enic: fix dereference before null check' " luca.boccassi
2022-02-18 12:38 ` patch 'net/hns3: fix max packet size rollback in PF' " luca.boccassi
2022-02-18 12:38 ` patch 'net/hns3: fix RSS key with null' " luca.boccassi
2022-02-18 12:38 ` luca.boccassi [this message]
2022-02-18 12:38 ` patch 'net/hns3: fix operating queue when TCAM table is invalid' " luca.boccassi
2022-02-18 12:38 ` patch 'net/hns3: delete duplicated RSS type' " luca.boccassi
2022-02-18 12:38 ` patch 'net/ixgbe: check filter init failure' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bonding: fix promiscuous and allmulticast state' " luca.boccassi
2022-02-18 12:38 ` patch 'net/bonding: fix reference count on mbufs' " luca.boccassi
2022-02-18 12:39 ` patch 'app/testpmd: fix bonding mode set' " luca.boccassi
2022-02-18 12:39 ` patch 'ethdev: add internal function to device struct from name' " luca.boccassi
2022-02-18 12:39 ` patch 'net/tap: fix to populate FDs in secondary process' " luca.boccassi
2022-02-18 12:39 ` patch 'app/testpmd: fix stack overflow for EEPROM display' " luca.boccassi
2022-02-18 12:39 ` patch 'vhost: fix guest to host physical address mapping' " luca.boccassi
2022-02-18 12:39 ` patch 'regex/mlx5: fix memory allocation check' " luca.boccassi
2022-02-18 12:39 ` patch 'stack: fix stubs header export' " luca.boccassi
2022-02-18 12:39 ` patch 'eal: fix C++ include' " luca.boccassi
2022-02-18 12:39 ` patch 'eventdev: " luca.boccassi
2022-02-18 12:39 ` patch 'graph: " luca.boccassi
2022-02-18 12:39 ` patch 'ipsec: " luca.boccassi
2022-02-18 12:39 ` patch 'table: " luca.boccassi
2022-02-18 12:39 ` patch 'vhost: " luca.boccassi
2022-02-18 12:39 ` patch 'mem: check allocation in dynamic hugepage init' " luca.boccassi
2022-02-18 12:39 ` patch 'app/fib: fix division by zero' " luca.boccassi
2022-02-18 12:39 ` patch 'test/mbuf: fix mbuf data content check' " luca.boccassi
2022-02-18 12:39 ` patch 'ipc: end multiprocess thread during cleanup' " luca.boccassi
2022-02-18 12:39 ` patch 'vfio: cleanup the multiprocess sync handle' " luca.boccassi
2022-02-18 12:39 ` patch 'net/memif: remove pointer deference before null check' " luca.boccassi
2022-02-18 12:39 ` patch 'net/sfc: do not push fast free offload to default TxQ config' " luca.boccassi
2022-02-18 12:39 ` patch 'net/sfc: demand Tx fast free offload on EF10 simple datapath' " luca.boccassi
2022-02-18 12:39 ` patch 'net/iavf: count continuous DD bits for Arm' " luca.boccassi
2022-02-18 12:39 ` patch 'net/iavf: count continuous DD bits for Arm in flex Rx' " luca.boccassi
2022-02-18 12:39 ` patch 'net/ice/base: add profile validation on switch filter' " luca.boccassi
2022-02-18 12:39 ` patch 'net/ice: fix build with 16-byte Rx descriptor' " luca.boccassi
2022-02-18 12:39 ` patch 'net/mlx5: fix committed bucket size' " luca.boccassi
2022-02-18 12:39 ` patch 'net/mlx5: fix inline length for multi-segment TSO' " luca.boccassi
2022-02-18 12:39 ` patch 'net/bnxt: fix ring calculation for representors' " luca.boccassi
2022-02-18 12:39 ` patch 'compress/octeontx: fix null pointer dereference' " luca.boccassi
2022-02-18 12:39 ` patch 'crypto/dpaax_sec: fix auth/cipher xform chain checks' " luca.boccassi
2022-02-18 12:39 ` patch 'raw/ntb: clear all valid doorbell bits on init' " luca.boccassi
2022-02-18 12:39 ` patch 'kni: update kernel API to set random MAC address' " luca.boccassi
2022-02-28 21:19   ` patch 'eventdev/eth_tx: fix queue add error code' " luca.boccassi
2022-02-28 21:19     ` patch 'eal: add missing C++ guards' " luca.boccassi
2022-02-28 21:19     ` patch 'telemetry: " luca.boccassi
2022-02-28 21:20     ` patch 'ethdev: " luca.boccassi
2022-02-28 21:20     ` patch 'metrics: " luca.boccassi
2022-02-28 21:20     ` patch 'acl: " luca.boccassi
2022-02-28 21:20     ` patch 'compressdev: " luca.boccassi
2022-02-28 21:20     ` patch 'eventdev: " luca.boccassi
2022-02-28 21:20     ` patch 'kni: " luca.boccassi
2022-02-28 21:20     ` patch 'vhost: " luca.boccassi
2022-02-28 21:20     ` patch 'ethdev: fix cast for C++ compatibility' " luca.boccassi
2022-02-28 21:20     ` patch 'dma/idxd: configure maximum batch size to high value' " luca.boccassi
2022-02-28 21:20     ` patch 'examples/qos_sched: fix core mask overflow' " luca.boccassi
2022-03-01 18:29       ` Ajmera, Megha
2022-02-28 21:20     ` patch 'cryptodev: fix RSA key type name' " luca.boccassi
2022-03-16  8:06       ` David Marchand
2022-03-22  9:18         ` Ray Kinsella
2022-02-28 21:20     ` patch 'doc: fix FIPS guide' " luca.boccassi
2022-02-28 21:20     ` patch 'examples/l2fwd-crypto: fix port mask overflow' " luca.boccassi
2022-02-28 21:20     ` patch 'baseband/acc100: avoid out-of-bounds access' " luca.boccassi
2022-02-28 21:20     ` patch 'crypto/virtio: fix " luca.boccassi
2022-02-28 21:20     ` patch 'crypto/ipsec_mb: fix ZUC authentication verify' " luca.boccassi
2022-02-28 21:20     ` patch 'crypto/ipsec_mb: fix ZUC operation overwrite' " luca.boccassi
2022-02-28 21:20     ` patch 'net/nfb: fix array indexes in deinit functions' " luca.boccassi
2022-02-28 21:20     ` patch 'net/nfb: fix multicast/promiscuous mode switching' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ixgbe: reset security context pointer on close' " luca.boccassi
2022-02-28 21:20     ` patch 'app/testpmd: check starting port is not in bonding' " luca.boccassi
2022-02-28 21:20     ` patch 'vhost: fix field naming in guest page struct' " luca.boccassi
2022-02-28 21:20     ` patch 'vhost: fix unsafe vring addresses modifications' " luca.boccassi
2022-02-28 21:20     ` patch 'net/af_xdp: add missing trailing newline in logs' " luca.boccassi
2022-02-28 21:20     ` patch 'net/af_xdp: ensure socket is deleted on Rx queue setup error' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ice: fix overwriting of LSE bit by DCF' " luca.boccassi
2022-02-28 21:20     ` patch 'net/i40e: enable maximum frame size at port level' " luca.boccassi
2022-02-28 21:20     ` patch 'net/mlx5: fix ineffective metadata argument adjustment' " luca.boccassi
2022-02-28 21:20     ` patch 'app/testpmd: fix GENEVE parsing in checksum mode' " luca.boccassi
2022-02-28 21:20     ` patch 'net/txgbe: fix debug logs' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ena: remove unused enumeration' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ena: remove unused offload variables' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ena: skip timer if reset is triggered' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ena: fix reset reason being overwritten' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ena: fix meta descriptor DF flag setup' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ena: check memory BAR before initializing LLQ' " luca.boccassi
2022-02-28 21:20     ` patch 'net/ena: fix checksum flag for L4' " luca.boccassi
2022-02-28 21:20     ` patch 'common/mlx5: fix queue pair ack timeout configuration' " luca.boccassi
2022-02-28 21:20     ` patch 'doc: remove obsolete vector Tx explanations from mlx5 guide' " luca.boccassi
2022-02-28 21:20     ` patch 'doc: replace broken links in mlx guides' " luca.boccassi
2022-02-28 21:20     ` patch 'doc: correct name of BlueField-2 in mlx5 guide' " luca.boccassi
2022-02-28 21:20     ` patch 'net/i40e: fix unintentional integer overflow' " luca.boccassi
2022-02-28 21:20     ` patch 'app/testpmd: fix build without drivers' " luca.boccassi
2022-02-28 21:20     ` patch 'test/efd: fix sockets mask size' " luca.boccassi
2022-02-28 21:20     ` patch 'efd: fix uninitialized structure' " luca.boccassi
2022-02-28 21:20     ` patch 'distributor: fix potential overflow' " luca.boccassi
2022-02-28 21:20     ` patch 'eal/linux: fix illegal memory access in uevent handler' " luca.boccassi
2022-02-28 21:20     ` patch 'kni: fix freeing order in device release' " luca.boccassi
2022-03-09 16:30 ` patch 'app/compress-perf: fix cycle count operations allocation' " luca.boccassi
2022-03-09 16:30   ` patch 'app/compress-perf: optimize operations pool " luca.boccassi
2022-03-09 16:30   ` patch 'app/compress-perf: fix socket ID type during init' " luca.boccassi
2022-03-09 16:30   ` patch 'app/compress-perf: fix number of queue pairs to setup' " luca.boccassi
2022-03-09 16:30   ` patch 'compressdev: fix socket ID type' " luca.boccassi
2022-03-09 16:30   ` patch 'net/hns3: remove duplicate macro definition' " luca.boccassi
2022-03-09 16:30   ` patch 'net/hns3: fix RSS TC mode entry' " luca.boccassi
2022-03-09 16:30   ` patch 'net/hns3: fix VF " luca.boccassi
2022-03-09 16:30   ` patch 'net/hns3: increase time waiting for PF reset completion' " luca.boccassi
2022-03-09 16:30   ` patch 'net/ixgbe: fix FSP check for X550EM devices' " luca.boccassi
2022-03-09 16:30   ` patch 'net/iavf: fix function pointer in multi-process' " luca.boccassi
2022-03-09 16:30   ` patch 'common/mlx5: add Netlink event helpers' " luca.boccassi
2022-03-09 16:30   ` patch 'net/txgbe: fix queue statistics mapping' " luca.boccassi
2022-03-09 16:30   ` patch 'net/kni: fix config initialization' " luca.boccassi
2022-03-09 16:30   ` patch 'doc: fix typos and punctuation in flow API guide' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix GRE item translation in Verbs' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix matcher priority with ICMP or ICMPv6' " luca.boccassi
2022-03-09 16:30   ` patch 'net/ice: fix Tx offload path choice' " luca.boccassi
2022-03-09 16:30   ` patch 'examples/vhost: fix launch with physical port' " luca.boccassi
2022-03-09 16:30   ` patch 'raw/ifpga: fix variable initialization in probing' " luca.boccassi
2022-03-09 16:30   ` patch 'raw/ifpga: fix monitor thread' " luca.boccassi
2022-03-09 16:30   ` patch 'app/pdump: abort on multi-core capture limit' " luca.boccassi
2022-03-09 16:30   ` patch 'examples/distributor: reduce Tx queue number to 1' " luca.boccassi
2022-03-09 16:30   ` patch 'examples/flow_classify: fix failure message' " luca.boccassi
2022-03-09 16:30   ` patch 'examples/kni: add missing trailing newline in log' " luca.boccassi
2022-03-09 16:30   ` patch 'regexdev: fix section attribute of symbols' " luca.boccassi
2022-03-09 16:30   ` patch 'ethdev: fix doxygen comments for device info struct' " luca.boccassi
2022-03-09 16:30   ` patch 'net/bnxt: fix null dereference in session cleanup' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix inet IPIP protocol type' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix next protocol RSS expansion' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix shared RSS destroy' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix NIC egress flow mismatch in switchdev mode' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix modify port action validation' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: remove unused reference counter' " luca.boccassi
2022-03-09 16:30   ` patch 'net/mlx5: fix MPLS/GRE Verbs spec ordering' " luca.boccassi
2022-03-09 16:30   ` patch 'net/iavf: fix potential out-of-bounds access' " luca.boccassi
2022-03-15 13:32 ` patch 'vhost: fix queue number check when setting inflight FD' " luca.boccassi
2022-03-15 13:32   ` patch 'vhost: fix FD leak with inflight messages' " luca.boccassi
2022-03-15 13:32   ` patch 'net/mlx5: fix sample flow action on trusted device' " luca.boccassi
2022-03-15 13:32   ` patch 'bpf: fix build with some libpcap version on FreeBSD' " luca.boccassi
2022-03-15 13:32   ` patch 'app/testpmd: fix show RSS RETA on Windows' " luca.boccassi
2022-03-15 13:32   ` patch 'examples/l3fwd: fix buffer overflow in Tx' " luca.boccassi
2022-03-15 13:32   ` patch 'eal/freebsd: add missing C++ include guards' " luca.boccassi
2022-03-15 13:32   ` patch 'compressdev: fix missing space in log macro' " luca.boccassi
2022-03-15 13:32   ` patch 'cryptodev: fix clang C++ include' " luca.boccassi
2022-03-17 12:06     ` patch 'net/mlx5: fix port matching in sample flow rule' " luca.boccassi
2022-03-17 12:06       ` patch 'doc: replace characters for (R) symbol in Linux guide' " luca.boccassi
2022-03-17 12:06       ` patch 'doc: fix missing note on UIO module " luca.boccassi
2022-03-17 12:06       ` patch 'raw/ifpga: fix build with optimization' " luca.boccassi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220218123931.1749595-85-luca.boccassi@gmail.com \
    --to=luca.boccassi@gmail.com \
    --cc=humin29@huawei.com \
    --cc=lihuisong@huawei.com \
    --cc=stable@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).