patches for DPDK stable branches
 help / color / mirror / Atom feed
From: luca.boccassi@gmail.com
To: Igor Romanov <igor.romanov@oktetlabs.ru>
Cc: Andrew Rybchenko <arybchenko@solarflare.com>,
	dpdk stable <stable@dpdk.org>
Subject: [dpdk-stable] patch 'net/sfc: fix RSS hash offload if queue action is used' has been queued to stable release 19.11.6
Date: Wed, 28 Oct 2020 10:44:12 +0000
Message-ID: <20201028104606.3504127-93-luca.boccassi@gmail.com> (raw)
In-Reply-To: <20201028104606.3504127-1-luca.boccassi@gmail.com>

Hi,

FYI, your patch has been queued to stable release 19.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 10/30/20. 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.

Thanks.

Luca Boccassi

---
From d175b6131bfb369cc1af2951d05e9ad03eaa184a Mon Sep 17 00:00:00 2001
From: Igor Romanov <igor.romanov@oktetlabs.ru>
Date: Thu, 24 Sep 2020 13:40:59 +0100
Subject: [PATCH] net/sfc: fix RSS hash offload if queue action is used

[ upstream commit 92a15fc541fcba1848933c4ba5c6e08f6330bc13 ]

When RSS hash offload is requested, the ingress filters that forward
packets to an RX queue must have an RSS context assigned to them to
calculate RSS hash, which was not always provided.

Fix it by creating a dummy RSS context that forwards packets
to the same queue and assign it to created by flow API filters when
RSS hash offload is enabled. RSS key and hash functions from
default RSS context are used.

Fixes: 5d308972954c ("ethdev: add mbuf RSS update as an offload")

Signed-off-by: Igor Romanov <igor.romanov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
---
 drivers/net/sfc/sfc.c        |  1 +
 drivers/net/sfc/sfc.h        |  2 ++
 drivers/net/sfc/sfc_ethdev.c | 48 +++++++++++++++++--------
 drivers/net/sfc/sfc_flow.c   | 69 +++++++++++++++++++++++++++++-------
 drivers/net/sfc/sfc_flow.h   |  2 ++
 drivers/net/sfc/sfc_rx.c     | 13 ++++---
 drivers/net/sfc/sfc_rx.h     |  1 +
 7 files changed, 105 insertions(+), 31 deletions(-)

diff --git a/drivers/net/sfc/sfc.c b/drivers/net/sfc/sfc.c
index 3f5cd7758b..da67acaa87 100644
--- a/drivers/net/sfc/sfc.c
+++ b/drivers/net/sfc/sfc.c
@@ -684,6 +684,7 @@ sfc_rss_attach(struct sfc_adapter *sa)
 	efx_intr_fini(sa->nic);
 
 	rte_memcpy(rss->key, default_rss_key, sizeof(rss->key));
+	rss->dummy_rss_context = EFX_RSS_CONTEXT_DEFAULT;
 
 	return 0;
 
diff --git a/drivers/net/sfc/sfc.h b/drivers/net/sfc/sfc.h
index cc52228771..bce6beefaa 100644
--- a/drivers/net/sfc/sfc.h
+++ b/drivers/net/sfc/sfc.h
@@ -172,6 +172,8 @@ struct sfc_rss {
 	efx_rx_hash_type_t		hash_types;
 	unsigned int			tbl[EFX_RSS_TBL_SIZE];
 	uint8_t				key[EFX_RSS_KEY_SIZE];
+
+	uint32_t			dummy_rss_context;
 };
 
 /* Adapter private data shared by primary and secondary processes */
diff --git a/drivers/net/sfc/sfc_ethdev.c b/drivers/net/sfc/sfc_ethdev.c
index f8867b0ec0..d33c476bd7 100644
--- a/drivers/net/sfc/sfc_ethdev.c
+++ b/drivers/net/sfc/sfc_ethdev.c
@@ -1515,8 +1515,15 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
 	struct sfc_adapter *sa = sfc_adapter_by_eth_dev(dev);
 	struct sfc_rss *rss = &sfc_sa2shared(sa)->rss;
 	unsigned int efx_hash_types;
+	uint32_t contexts[] = {EFX_RSS_CONTEXT_DEFAULT, rss->dummy_rss_context};
+	unsigned int n_contexts;
+	unsigned int mode_i = 0;
+	unsigned int key_i = 0;
+	unsigned int i = 0;
 	int rc = 0;
 
+	n_contexts = rss->dummy_rss_context == EFX_RSS_CONTEXT_DEFAULT ? 1 : 2;
+
 	if (sfc_sa2shared(sa)->isolated)
 		return -ENOTSUP;
 
@@ -1543,19 +1550,24 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
 	if (rc != 0)
 		goto fail_rx_hf_rte_to_efx;
 
-	rc = efx_rx_scale_mode_set(sa->nic, EFX_RSS_CONTEXT_DEFAULT,
-				   rss->hash_alg, efx_hash_types, B_TRUE);
-	if (rc != 0)
-		goto fail_scale_mode_set;
+	for (mode_i = 0; mode_i < n_contexts; mode_i++) {
+		rc = efx_rx_scale_mode_set(sa->nic, contexts[mode_i],
+					   rss->hash_alg, efx_hash_types,
+					   B_TRUE);
+		if (rc != 0)
+			goto fail_scale_mode_set;
+	}
 
 	if (rss_conf->rss_key != NULL) {
 		if (sa->state == SFC_ADAPTER_STARTED) {
-			rc = efx_rx_scale_key_set(sa->nic,
-						  EFX_RSS_CONTEXT_DEFAULT,
-						  rss_conf->rss_key,
-						  sizeof(rss->key));
-			if (rc != 0)
-				goto fail_scale_key_set;
+			for (key_i = 0; key_i < n_contexts; key_i++) {
+				rc = efx_rx_scale_key_set(sa->nic,
+							  contexts[key_i],
+							  rss_conf->rss_key,
+							  sizeof(rss->key));
+				if (rc != 0)
+					goto fail_scale_key_set;
+			}
 		}
 
 		rte_memcpy(rss->key, rss_conf->rss_key, sizeof(rss->key));
@@ -1568,12 +1580,20 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
 	return 0;
 
 fail_scale_key_set:
-	if (efx_rx_scale_mode_set(sa->nic, EFX_RSS_CONTEXT_DEFAULT,
-				  EFX_RX_HASHALG_TOEPLITZ,
-				  rss->hash_types, B_TRUE) != 0)
-		sfc_err(sa, "failed to restore RSS mode");
+	for (i = 0; i < key_i; i++) {
+		if (efx_rx_scale_key_set(sa->nic, contexts[i], rss->key,
+					 sizeof(rss->key)) != 0)
+			sfc_err(sa, "failed to restore RSS key");
+	}
 
 fail_scale_mode_set:
+	for (i = 0; i < mode_i; i++) {
+		if (efx_rx_scale_mode_set(sa->nic, contexts[i],
+					  EFX_RX_HASHALG_TOEPLITZ,
+					  rss->hash_types, B_TRUE) != 0)
+			sfc_err(sa, "failed to restore RSS mode");
+	}
+
 fail_rx_hf_rte_to_efx:
 	sfc_adapter_unlock(sa);
 	return -rc;
diff --git a/drivers/net/sfc/sfc_flow.c b/drivers/net/sfc/sfc_flow.c
index 023e55d951..91aa2a687a 100644
--- a/drivers/net/sfc/sfc_flow.c
+++ b/drivers/net/sfc/sfc_flow.c
@@ -1240,6 +1240,7 @@ sfc_flow_parse_queue(struct sfc_adapter *sa,
 		     struct rte_flow *flow)
 {
 	struct sfc_rxq *rxq;
+	struct sfc_rxq_info *rxq_info;
 
 	if (queue->index >= sfc_sa2shared(sa)->rxq_count)
 		return -EINVAL;
@@ -1247,6 +1248,10 @@ sfc_flow_parse_queue(struct sfc_adapter *sa,
 	rxq = &sa->rxq_ctrl[queue->index];
 	flow->spec.template.efs_dmaq_id = (uint16_t)rxq->hw_index;
 
+	rxq_info = &sfc_sa2shared(sa)->rxq_info[queue->index];
+	flow->spec.rss_hash_required = !!(rxq_info->rxq_flags &
+					    SFC_RXQ_FLAG_RSS_HASH);
+
 	return 0;
 }
 
@@ -1405,13 +1410,34 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
 	struct sfc_rss *rss = &sas->rss;
 	struct sfc_flow_rss *flow_rss = &flow->rss_conf;
 	uint32_t efs_rss_context = EFX_RSS_CONTEXT_DEFAULT;
+	boolean_t create_context;
 	unsigned int i;
 	int rc = 0;
 
-	if (flow->rss) {
-		unsigned int rss_spread = MIN(flow_rss->rxq_hw_index_max -
-					      flow_rss->rxq_hw_index_min + 1,
-					      EFX_MAXRSS);
+	create_context = flow->rss || (flow->spec.rss_hash_required &&
+			rss->dummy_rss_context == EFX_RSS_CONTEXT_DEFAULT);
+
+	if (create_context) {
+		unsigned int rss_spread;
+		unsigned int rss_hash_types;
+		uint8_t *rss_key;
+
+		if (flow->rss) {
+			rss_spread = MIN(flow_rss->rxq_hw_index_max -
+					flow_rss->rxq_hw_index_min + 1,
+					EFX_MAXRSS);
+			rss_hash_types = flow_rss->rss_hash_types;
+			rss_key = flow_rss->rss_key;
+		} else {
+			/*
+			 * Initialize dummy RSS context parameters to have
+			 * valid RSS hash. Use default RSS hash function and
+			 * key.
+			 */
+			rss_spread = 1;
+			rss_hash_types = rss->hash_types;
+			rss_key = rss->key;
+		}
 
 		rc = efx_rx_scale_context_alloc(sa->nic,
 						EFX_RX_SCALE_EXCLUSIVE,
@@ -1422,16 +1448,19 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
 
 		rc = efx_rx_scale_mode_set(sa->nic, efs_rss_context,
 					   rss->hash_alg,
-					   flow_rss->rss_hash_types, B_TRUE);
+					   rss_hash_types, B_TRUE);
 		if (rc != 0)
 			goto fail_scale_mode_set;
 
 		rc = efx_rx_scale_key_set(sa->nic, efs_rss_context,
-					  flow_rss->rss_key,
-					  sizeof(rss->key));
+					  rss_key, sizeof(rss->key));
 		if (rc != 0)
 			goto fail_scale_key_set;
+	} else {
+		efs_rss_context = rss->dummy_rss_context;
+	}
 
+	if (flow->rss || flow->spec.rss_hash_required) {
 		/*
 		 * At this point, fully elaborated filter specifications
 		 * have been produced from the template. To make sure that
@@ -1442,8 +1471,9 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
 			efx_filter_spec_t *spec = &flow->spec.filters[i];
 
 			spec->efs_rss_context = efs_rss_context;
-			spec->efs_dmaq_id = flow_rss->rxq_hw_index_min;
 			spec->efs_flags |= EFX_FILTER_FLAG_RX_RSS;
+			if (flow->rss)
+				spec->efs_dmaq_id = flow_rss->rxq_hw_index_min;
 		}
 	}
 
@@ -1451,7 +1481,12 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
 	if (rc != 0)
 		goto fail_filter_insert;
 
-	if (flow->rss) {
+	if (create_context) {
+		unsigned int dummy_tbl[RTE_DIM(flow_rss->rss_tbl)] = {0};
+		unsigned int *tbl;
+
+		tbl = flow->rss ? flow_rss->rss_tbl : dummy_tbl;
+
 		/*
 		 * Scale table is set after filter insertion because
 		 * the table entries are relative to the base RxQ ID
@@ -1461,10 +1496,13 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
 		 * the table entries, and the operation will succeed
 		 */
 		rc = efx_rx_scale_tbl_set(sa->nic, efs_rss_context,
-					  flow_rss->rss_tbl,
-					  RTE_DIM(flow_rss->rss_tbl));
+					  tbl, RTE_DIM(flow_rss->rss_tbl));
 		if (rc != 0)
 			goto fail_scale_tbl_set;
+
+		/* Remember created dummy RSS context */
+		if (!flow->rss)
+			rss->dummy_rss_context = efs_rss_context;
 	}
 
 	return 0;
@@ -1475,7 +1513,7 @@ fail_scale_tbl_set:
 fail_filter_insert:
 fail_scale_key_set:
 fail_scale_mode_set:
-	if (efs_rss_context != EFX_RSS_CONTEXT_DEFAULT)
+	if (create_context)
 		efx_rx_scale_context_free(sa->nic, efs_rss_context);
 
 fail_scale_context_alloc:
@@ -2474,12 +2512,19 @@ sfc_flow_fini(struct sfc_adapter *sa)
 void
 sfc_flow_stop(struct sfc_adapter *sa)
 {
+	struct sfc_adapter_shared * const sas = sfc_sa2shared(sa);
+	struct sfc_rss *rss = &sas->rss;
 	struct rte_flow *flow;
 
 	SFC_ASSERT(sfc_adapter_is_locked(sa));
 
 	TAILQ_FOREACH(flow, &sa->filter.flow_list, entries)
 		sfc_flow_filter_remove(sa, flow);
+
+	if (rss->dummy_rss_context != EFX_RSS_CONTEXT_DEFAULT) {
+		efx_rx_scale_context_free(sa->nic, rss->dummy_rss_context);
+		rss->dummy_rss_context = EFX_RSS_CONTEXT_DEFAULT;
+	}
 }
 
 int
diff --git a/drivers/net/sfc/sfc_flow.h b/drivers/net/sfc/sfc_flow.h
index 71ec18cb95..f59db0a468 100644
--- a/drivers/net/sfc/sfc_flow.h
+++ b/drivers/net/sfc/sfc_flow.h
@@ -43,6 +43,8 @@ struct sfc_flow_spec {
 	efx_filter_spec_t filters[SF_FLOW_SPEC_NB_FILTERS_MAX];
 	/* number of complete specifications */
 	unsigned int count;
+	/* RSS hash toggle */
+	boolean_t rss_hash_required;
 };
 
 /* PMD-specific definition of the opaque type from rte_flow.h */
diff --git a/drivers/net/sfc/sfc_rx.c b/drivers/net/sfc/sfc_rx.c
index 3ecd8da8c9..9a1c368328 100644
--- a/drivers/net/sfc/sfc_rx.c
+++ b/drivers/net/sfc/sfc_rx.c
@@ -1139,6 +1139,13 @@ sfc_rx_qinit(struct sfc_adapter *sa, unsigned int sw_index,
 	rxq_info->refill_threshold =
 		RTE_MAX(rx_free_thresh, SFC_RX_REFILL_BULK);
 	rxq_info->refill_mb_pool = mb_pool;
+
+	if (rss->hash_support == EFX_RX_HASH_AVAILABLE && rss->channels > 0 &&
+	    (offloads & DEV_RX_OFFLOAD_RSS_HASH))
+		rxq_info->rxq_flags = SFC_RXQ_FLAG_RSS_HASH;
+	else
+		rxq_info->rxq_flags = 0;
+
 	rxq->buf_size = buf_size;
 
 	rc = sfc_dma_alloc(sa, "rxq", sw_index,
@@ -1154,11 +1161,7 @@ sfc_rx_qinit(struct sfc_adapter *sa, unsigned int sw_index,
 	info.buf_size = buf_size;
 	info.batch_max = encp->enc_rx_batch_max;
 	info.prefix_size = encp->enc_rx_prefix_size;
-
-	if (rss->hash_support == EFX_RX_HASH_AVAILABLE && rss->channels > 0 &&
-	    (offloads & DEV_RX_OFFLOAD_RSS_HASH))
-		info.flags |= SFC_RXQ_FLAG_RSS_HASH;
-
+	info.flags = rxq_info->rxq_flags;
 	info.rxq_entries = rxq_info->entries;
 	info.rxq_hw_ring = rxq->mem.esm_base;
 	info.evq_hw_index = sfc_evq_index_by_rxq_sw_index(sa, sw_index);
diff --git a/drivers/net/sfc/sfc_rx.h b/drivers/net/sfc/sfc_rx.h
index 42b16e2ee6..4c31cfbaa2 100644
--- a/drivers/net/sfc/sfc_rx.h
+++ b/drivers/net/sfc/sfc_rx.h
@@ -115,6 +115,7 @@ struct sfc_rxq_info {
 	boolean_t		deferred_started;
 	unsigned int		refill_threshold;
 	struct rte_mempool	*refill_mb_pool;
+	unsigned int		rxq_flags;
 };
 
 struct sfc_rxq_info *sfc_rxq_info_by_dp_rxq(const struct sfc_dp_rxq *dp_rxq);
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-10-28 10:35:14.672255866 +0000
+++ 0093-net-sfc-fix-RSS-hash-offload-if-queue-action-is-used.patch	2020-10-28 10:35:11.644832085 +0000
@@ -1,8 +1,10 @@
-From 92a15fc541fcba1848933c4ba5c6e08f6330bc13 Mon Sep 17 00:00:00 2001
+From d175b6131bfb369cc1af2951d05e9ad03eaa184a Mon Sep 17 00:00:00 2001
 From: Igor Romanov <igor.romanov@oktetlabs.ru>
 Date: Thu, 24 Sep 2020 13:40:59 +0100
 Subject: [PATCH] net/sfc: fix RSS hash offload if queue action is used
 
+[ upstream commit 92a15fc541fcba1848933c4ba5c6e08f6330bc13 ]
+
 When RSS hash offload is requested, the ingress filters that forward
 packets to an RX queue must have an RSS context assigned to them to
 calculate RSS hash, which was not always provided.
@@ -13,7 +15,6 @@
 default RSS context are used.
 
 Fixes: 5d308972954c ("ethdev: add mbuf RSS update as an offload")
-Cc: stable@dpdk.org
 
 Signed-off-by: Igor Romanov <igor.romanov@oktetlabs.ru>
 Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
@@ -28,10 +29,10 @@
  7 files changed, 105 insertions(+), 31 deletions(-)
 
 diff --git a/drivers/net/sfc/sfc.c b/drivers/net/sfc/sfc.c
-index 4be65c15dc..615e15af64 100644
+index 3f5cd7758b..da67acaa87 100644
 --- a/drivers/net/sfc/sfc.c
 +++ b/drivers/net/sfc/sfc.c
-@@ -685,6 +685,7 @@ sfc_rss_attach(struct sfc_adapter *sa)
+@@ -684,6 +684,7 @@ sfc_rss_attach(struct sfc_adapter *sa)
  	efx_intr_fini(sa->nic);
  
  	rte_memcpy(rss->key, default_rss_key, sizeof(rss->key));
@@ -40,10 +41,10 @@
  	return 0;
  
 diff --git a/drivers/net/sfc/sfc.h b/drivers/net/sfc/sfc.h
-index fa7c79b80b..5ea29362e1 100644
+index cc52228771..bce6beefaa 100644
 --- a/drivers/net/sfc/sfc.h
 +++ b/drivers/net/sfc/sfc.h
-@@ -157,6 +157,8 @@ struct sfc_rss {
+@@ -172,6 +172,8 @@ struct sfc_rss {
  	efx_rx_hash_type_t		hash_types;
  	unsigned int			tbl[EFX_RSS_TBL_SIZE];
  	uint8_t				key[EFX_RSS_KEY_SIZE];
@@ -53,10 +54,10 @@
  
  /* Adapter private data shared by primary and secondary processes */
 diff --git a/drivers/net/sfc/sfc_ethdev.c b/drivers/net/sfc/sfc_ethdev.c
-index 6e6eb16860..602351bcc4 100644
+index f8867b0ec0..d33c476bd7 100644
 --- a/drivers/net/sfc/sfc_ethdev.c
 +++ b/drivers/net/sfc/sfc_ethdev.c
-@@ -1544,8 +1544,15 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
+@@ -1515,8 +1515,15 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
  	struct sfc_adapter *sa = sfc_adapter_by_eth_dev(dev);
  	struct sfc_rss *rss = &sfc_sa2shared(sa)->rss;
  	unsigned int efx_hash_types;
@@ -72,7 +73,7 @@
  	if (sfc_sa2shared(sa)->isolated)
  		return -ENOTSUP;
  
-@@ -1572,19 +1579,24 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
+@@ -1543,19 +1550,24 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
  	if (rc != 0)
  		goto fail_rx_hf_rte_to_efx;
  
@@ -107,7 +108,7 @@
  		}
  
  		rte_memcpy(rss->key, rss_conf->rss_key, sizeof(rss->key));
-@@ -1597,12 +1609,20 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
+@@ -1568,12 +1580,20 @@ sfc_dev_rss_hash_update(struct rte_eth_dev *dev,
  	return 0;
  
  fail_scale_key_set:
@@ -133,41 +134,41 @@
  	sfc_adapter_unlock(sa);
  	return -rc;
 diff --git a/drivers/net/sfc/sfc_flow.c b/drivers/net/sfc/sfc_flow.c
-index 1a3c0d618b..cb802d7991 100644
+index 023e55d951..91aa2a687a 100644
 --- a/drivers/net/sfc/sfc_flow.c
 +++ b/drivers/net/sfc/sfc_flow.c
-@@ -1293,6 +1293,7 @@ sfc_flow_parse_queue(struct sfc_adapter *sa,
- 	struct sfc_flow_spec *spec = &flow->spec;
- 	struct sfc_flow_spec_filter *spec_filter = &spec->filter;
+@@ -1240,6 +1240,7 @@ sfc_flow_parse_queue(struct sfc_adapter *sa,
+ 		     struct rte_flow *flow)
+ {
  	struct sfc_rxq *rxq;
 +	struct sfc_rxq_info *rxq_info;
  
  	if (queue->index >= sfc_sa2shared(sa)->rxq_count)
  		return -EINVAL;
-@@ -1300,6 +1301,10 @@ sfc_flow_parse_queue(struct sfc_adapter *sa,
+@@ -1247,6 +1248,10 @@ sfc_flow_parse_queue(struct sfc_adapter *sa,
  	rxq = &sa->rxq_ctrl[queue->index];
- 	spec_filter->template.efs_dmaq_id = (uint16_t)rxq->hw_index;
+ 	flow->spec.template.efs_dmaq_id = (uint16_t)rxq->hw_index;
  
 +	rxq_info = &sfc_sa2shared(sa)->rxq_info[queue->index];
-+	spec_filter->rss_hash_required = !!(rxq_info->rxq_flags &
++	flow->spec.rss_hash_required = !!(rxq_info->rxq_flags &
 +					    SFC_RXQ_FLAG_RSS_HASH);
 +
  	return 0;
  }
  
-@@ -1465,13 +1470,34 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
- 	struct sfc_flow_spec_filter *spec_filter = &flow->spec.filter;
- 	struct sfc_flow_rss *flow_rss = &spec_filter->rss_conf;
+@@ -1405,13 +1410,34 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
+ 	struct sfc_rss *rss = &sas->rss;
+ 	struct sfc_flow_rss *flow_rss = &flow->rss_conf;
  	uint32_t efs_rss_context = EFX_RSS_CONTEXT_DEFAULT;
 +	boolean_t create_context;
  	unsigned int i;
  	int rc = 0;
  
--	if (spec_filter->rss) {
+-	if (flow->rss) {
 -		unsigned int rss_spread = MIN(flow_rss->rxq_hw_index_max -
 -					      flow_rss->rxq_hw_index_min + 1,
 -					      EFX_MAXRSS);
-+	create_context = spec_filter->rss || (spec_filter->rss_hash_required &&
++	create_context = flow->rss || (flow->spec.rss_hash_required &&
 +			rss->dummy_rss_context == EFX_RSS_CONTEXT_DEFAULT);
 +
 +	if (create_context) {
@@ -175,7 +176,7 @@
 +		unsigned int rss_hash_types;
 +		uint8_t *rss_key;
 +
-+		if (spec_filter->rss) {
++		if (flow->rss) {
 +			rss_spread = MIN(flow_rss->rxq_hw_index_max -
 +					flow_rss->rxq_hw_index_min + 1,
 +					EFX_MAXRSS);
@@ -194,7 +195,7 @@
  
  		rc = efx_rx_scale_context_alloc(sa->nic,
  						EFX_RX_SCALE_EXCLUSIVE,
-@@ -1482,16 +1508,19 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
+@@ -1422,16 +1448,19 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
  
  		rc = efx_rx_scale_mode_set(sa->nic, efs_rss_context,
  					   rss->hash_alg,
@@ -213,36 +214,36 @@
 +		efs_rss_context = rss->dummy_rss_context;
 +	}
  
-+	if (spec_filter->rss || spec_filter->rss_hash_required) {
++	if (flow->rss || flow->spec.rss_hash_required) {
  		/*
  		 * At this point, fully elaborated filter specifications
  		 * have been produced from the template. To make sure that
-@@ -1502,8 +1531,9 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
- 			efx_filter_spec_t *spec = &spec_filter->filters[i];
+@@ -1442,8 +1471,9 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
+ 			efx_filter_spec_t *spec = &flow->spec.filters[i];
  
  			spec->efs_rss_context = efs_rss_context;
 -			spec->efs_dmaq_id = flow_rss->rxq_hw_index_min;
  			spec->efs_flags |= EFX_FILTER_FLAG_RX_RSS;
-+			if (spec_filter->rss)
++			if (flow->rss)
 +				spec->efs_dmaq_id = flow_rss->rxq_hw_index_min;
  		}
  	}
  
-@@ -1511,7 +1541,12 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
+@@ -1451,7 +1481,12 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
  	if (rc != 0)
  		goto fail_filter_insert;
  
--	if (spec_filter->rss) {
+-	if (flow->rss) {
 +	if (create_context) {
 +		unsigned int dummy_tbl[RTE_DIM(flow_rss->rss_tbl)] = {0};
 +		unsigned int *tbl;
 +
-+		tbl = spec_filter->rss ? flow_rss->rss_tbl : dummy_tbl;
++		tbl = flow->rss ? flow_rss->rss_tbl : dummy_tbl;
 +
  		/*
  		 * Scale table is set after filter insertion because
  		 * the table entries are relative to the base RxQ ID
-@@ -1521,10 +1556,13 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
+@@ -1461,10 +1496,13 @@ sfc_flow_filter_insert(struct sfc_adapter *sa,
  		 * the table entries, and the operation will succeed
  		 */
  		rc = efx_rx_scale_tbl_set(sa->nic, efs_rss_context,
@@ -253,12 +254,12 @@
  			goto fail_scale_tbl_set;
 +
 +		/* Remember created dummy RSS context */
-+		if (!spec_filter->rss)
++		if (!flow->rss)
 +			rss->dummy_rss_context = efs_rss_context;
  	}
  
  	return 0;
-@@ -1535,7 +1573,7 @@ fail_scale_tbl_set:
+@@ -1475,7 +1513,7 @@ fail_scale_tbl_set:
  fail_filter_insert:
  fail_scale_key_set:
  fail_scale_mode_set:
@@ -267,7 +268,7 @@
  		efx_rx_scale_context_free(sa->nic, efs_rss_context);
  
  fail_scale_context_alloc:
-@@ -2634,12 +2672,19 @@ sfc_flow_fini(struct sfc_adapter *sa)
+@@ -2474,12 +2512,19 @@ sfc_flow_fini(struct sfc_adapter *sa)
  void
  sfc_flow_stop(struct sfc_adapter *sa)
  {
@@ -277,8 +278,8 @@
  
  	SFC_ASSERT(sfc_adapter_is_locked(sa));
  
- 	TAILQ_FOREACH(flow, &sa->flow_list, entries)
- 		sfc_flow_remove(sa, flow, NULL);
+ 	TAILQ_FOREACH(flow, &sa->filter.flow_list, entries)
+ 		sfc_flow_filter_remove(sa, flow);
 +
 +	if (rss->dummy_rss_context != EFX_RSS_CONTEXT_DEFAULT) {
 +		efx_rx_scale_context_free(sa->nic, rss->dummy_rss_context);
@@ -288,20 +289,20 @@
  
  int
 diff --git a/drivers/net/sfc/sfc_flow.h b/drivers/net/sfc/sfc_flow.h
-index 5a7dad8f09..433c7a31e9 100644
+index 71ec18cb95..f59db0a468 100644
 --- a/drivers/net/sfc/sfc_flow.h
 +++ b/drivers/net/sfc/sfc_flow.h
-@@ -52,6 +52,8 @@ struct sfc_flow_spec_filter {
+@@ -43,6 +43,8 @@ struct sfc_flow_spec {
+ 	efx_filter_spec_t filters[SF_FLOW_SPEC_NB_FILTERS_MAX];
+ 	/* number of complete specifications */
  	unsigned int count;
- 	/* RSS toggle */
- 	boolean_t rss;
 +	/* RSS hash toggle */
 +	boolean_t rss_hash_required;
- 	/* RSS configuration */
- 	struct sfc_flow_rss rss_conf;
  };
+ 
+ /* PMD-specific definition of the opaque type from rte_flow.h */
 diff --git a/drivers/net/sfc/sfc_rx.c b/drivers/net/sfc/sfc_rx.c
-index dccafb163a..3e5c8e42da 100644
+index 3ecd8da8c9..9a1c368328 100644
 --- a/drivers/net/sfc/sfc_rx.c
 +++ b/drivers/net/sfc/sfc_rx.c
 @@ -1139,6 +1139,13 @@ sfc_rx_qinit(struct sfc_adapter *sa, unsigned int sw_index,
@@ -332,7 +333,7 @@
  	info.rxq_hw_ring = rxq->mem.esm_base;
  	info.evq_hw_index = sfc_evq_index_by_rxq_sw_index(sa, sw_index);
 diff --git a/drivers/net/sfc/sfc_rx.h b/drivers/net/sfc/sfc_rx.h
-index 697ea29d62..b0b5327a49 100644
+index 42b16e2ee6..4c31cfbaa2 100644
 --- a/drivers/net/sfc/sfc_rx.h
 +++ b/drivers/net/sfc/sfc_rx.h
 @@ -115,6 +115,7 @@ struct sfc_rxq_info {

  parent reply	other threads:[~2020-10-28 10:51 UTC|newest]

Thread overview: 374+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-28 10:42 [dpdk-stable] patch 'eal/linux: change udev debug message' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'bus/pci: remove duplicate declaration' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/failsafe: fix double space in warning log' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/netvsc: fix multiple channel Rx' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/netvsc: fix stale value after free' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/hinic: fix negative array index read' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/mlx5: remove unused includes' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/mlx5: remove unused log macros' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/af_xdp: change return value from Rx to unsigned' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/bnxt: add memory allocation check in VF info init' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/bnxt: fix endianness while setting L4 destination port' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/bnxt: fix LRO configuration' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/bnxt: fix structure variable initialization' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/bnxt: fix crash in vector mode Tx' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/bnxt: fix L2 filter allocation' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'bus/dpaa: remove logically dead code' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/hns3: fix default MAC address from firmware' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/hns3: fix some incomplete command structures' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/i40e: fix link status' " luca.boccassi
2020-10-28 10:42 ` [dpdk-stable] patch 'net/iavf: fix scattered Rx enabling' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/iavf: fix port start during configuration restore' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/iavf: fix setting of MAC address' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/iavf: downgrade error log' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: fix out of bounds access' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/ice: fix flow validation for unsupported patterns' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'ethdev: remove redundant license text' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/iavf: fix command after PF reset' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/ice/base: fix issues around move nodes' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/i40e/base: fix function header arguments' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/i40e/base: fix Rx only for unicast promisc on VLAN' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/tap: free mempool when closing' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/dpaa2: fix misuse of interface index' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/pfe: " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/dpaa: fix port ID type in API' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/cxgbe: fix duplicate MAC addresses in MPS TCAM' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/mlx5: fix RSS RETA reset on start' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/nfp: expand device info get' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'app/testpmd: fix name of bitrate library in meson build' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: fix queue offload capability' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/mlx5: fix hairpin dependency on destination DevX TIR' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/i40e: fix recreating flexible flow director rule' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/ice: fix ptype parsing' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'bus/dpaa: fix fd check before close' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/bnxt: fix checking VNIC in shutdown path' " luca.boccassi
2020-10-29  6:29   ` Somnath Kotur
2020-10-28 10:43 ` [dpdk-stable] patch 'net/bnxt: add separate mutex for FW health check' " luca.boccassi
2020-10-29  6:30   ` Somnath Kotur
2020-10-28 10:43 ` [dpdk-stable] patch 'gso: fix payload unit size for UDP' " luca.boccassi
2020-10-29  4:45   ` [dpdk-stable] 答复: " Yi Yang (杨燚)-云服务集团
2020-10-29 11:10     ` Luca Boccassi
2020-10-29 11:29       ` Kevin Traynor
2020-10-30  0:26         ` [dpdk-stable] 答复: " Yi Yang (杨燚)-云服务集团
2020-10-30  9:31           ` Kevin Traynor
2020-10-30  0:32       ` [dpdk-stable] 答复: [gmail.com代发]Re: " Yi Yang (杨燚)-云服务集团
2020-10-28 10:43 ` [dpdk-stable] patch 'net/cxgbe: fix crash when accessing empty Tx mbuf list' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'doc: improve multiport PF in nfp guide' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/sfc/base: fix tunnel configuration' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'vhost: fix IOTLB mempool single-consumer flag' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/af_xdp: fix umem size' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/iavf: fix iterator for RSS LUT' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/netvsc: fix rndis packet addresses' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/enic: ignore VLAN inner type when it is zero' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/enic: generate VXLAN src port if it is zero in template' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'test/ring: fix number of single element enqueue/dequeue' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'maintainers: update Mellanox emails' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'kni: fix build with Linux 5.9' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'stack: reload head when pop fails' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'stack: fix uninitialized variable' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hinic: fix Rx nombuf stats' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hinic/base: get default cos from chip' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hinic/base: fix clock definition with glibc version' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/qede: fix milliseconds sleep macro' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/ena/base: use min/max macros with type conversion' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/ena/base: specify delay operations' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/ena/base: fix release of wait event' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/af_xdp: avoid deadlock due to empty fill queue' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/i40e: fix byte counters' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/bnxt: fix link status during device recovery' " luca.boccassi
2020-10-29  9:22   ` Kalesh Anakkur Purayil
2020-10-28 10:43 ` [dpdk-stable] patch 'net/ixgbe: fix VF reset HW error handling' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/bnxt: fix shift operation' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/bnxt: fix drop enable in get Rx queue info' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/bnxt: fix queue get " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: fix deleting default VLAN from PF' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: skip VF register access when PF in FLR' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: fix config when creating RSS rule after flush' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: fix flow RSS queue number 0' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: fix flushing RSS rule' " luca.boccassi
2020-10-28 10:43 ` [dpdk-stable] patch 'net/hns3: fix configuring device with RSS enabled' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/hns3: fix storing RSS info when creating flow action' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'mempool/octeontx: fix aura to pool mapping' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/octeontx2: fix multi segment mode for jumbo packets' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/fm10k: fix memory leak when thresh check fails' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app/testpmd: fix port id check in Tx VLAN command' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app/testpmd: fix VLAN configuration on failure' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app/testpmd: remove restriction on Tx segments set' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app/testpmd: fix packet header in txonly mode' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app/testpmd: fix descriptor id check' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app/testpmd: fix displaying Rx/Tx queues information' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/qede: fix dereference before null check' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/sfc: fix RSS hash flag when offload is disabled' " luca.boccassi
2020-10-28 10:44 ` luca.boccassi [this message]
2020-10-28 10:44 ` [dpdk-stable] patch 'drivers/net: fix port id size' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app: fix ethdev " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'doc: " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'examples/vhost_blk: check driver start failure' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/virtio: fix packed ring indirect descricptors setup' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'vdpa/ifc: fix build with recent kernels' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'vfio: fix group descriptor check' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'bus/fslmc: fix VFIO " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'bus/pci: fix memory leak when unmapping VFIO resource' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'bus/pci: fix leak on VFIO mapping error' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'doc: fix formatting of notes in meson guide' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'rcu: avoid literal suffix warning in C++ mode' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'mem: fix allocation in container with SELinux' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'examples/vm_power: fix 32-bit build' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'bus/fslmc: fix dpio close' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'bus/fslmc: fix atomic queues on NXP LX2 platform' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'raw/skeleton: reset test statistics' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'raw/skeleton: allow closing already closed device' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'port: remove useless assignment' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'power: fix current frequency index' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'timer: add limitation note for sync stop and reset' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'app/testpmd: fix build with gcc 11' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'pmdinfogen: " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'raw/ioat: fix missing close function' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'examples/ioat: fix stats print' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/hns3: fix error type when validating RSS flow action' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/hns3: fix flow error type' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/hns3: check PCI config space reads' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/mlx5: fix meter table definitions' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/mlx5: fix Rx queue count calculation' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/qede: fix getting link details' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'ethdev: fix RSS flow expansion in case of mismatch' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/mlx5: remove unused variable in Tx queue creation' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/bnxt: fix link update' " luca.boccassi
2020-10-29  9:24   ` Kalesh Anakkur Purayil
2020-10-28 10:44 ` [dpdk-stable] patch 'common/mlx5: fix PCI address lookup' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/fm10k: fix memory leak when Tx thresh check fails' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/iavf: fix flow flush after PF reset' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'raw/dpaa2_qdma: fix " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'eal: fix doxygen for EAL cleanup' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'build: skip detecting libpcap via pcap-config' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'doc: fix diagram in dpaa2 guide' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net: check segment pointer in raw checksum processing' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'net/virtio: check raw checksum failure' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'mem: fix allocation failure on non-NUMA kernel' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'acl: fix x86 build for compiler without AVX2' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'doc: fix missing classify methods in ACL guide' " luca.boccassi
2020-10-28 10:44 ` [dpdk-stable] patch 'table: fix hash for 32-bit' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'crypto/octeontx2: fix session-less mode' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'app/test-sad: fix uninitialized variable' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/crypto: fix device number' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'crypto/dpaa_sec: fix a null pointer dereference' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'app/bbdev: fix test vector symlink' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'baseband/fpga_lte_fec: fix crash with debug' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/crypto: fix stats test' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'crypto/armv8: fix mempool object returning' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'cryptodev: fix parameter parsing' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'examples/fips_validation: fix buffer overflow' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'examples/fips_validation: fix version compatibility' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'crypto/dpaa2_sec: fix stats query without queue pair' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'crypto/aesni_mb: fix CCM digest size check' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'crypto/aesni_mb: fix GCM " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/event_crypto_adapter: fix configuration' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'eventdev: check allocation in Tx adapter' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'event/dpaa2: fix dereference before null check' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'eventdev: fix adapter leak in error path' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/event: fix function arguments for crypto adapter' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'eal/x86: fix memcpy AVX-512 enablement' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'vhost: fix external mbuf creation' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'vhost: fix virtio-net header length with packed ring' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/dpaa2: fix build with timesync functions' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/netvsc: fix Tx queue leak in error path' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/bonding: fix possible unbalanced packet receiving' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/bonding: fix Rx queue conversion' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/pcap: fix input only Rx' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/memif: do not update local copy of tail in Tx' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/memif: relax load of ring tail for M2S ring' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/memif: relax load of ring head " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/memif: relax load of ring head for S2M " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/af_xdp: use strlcpy instead of strncpy' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/octeontx2: fix RSS flow create' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/octeontx2: remove useless check before free' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/pcap: fix crash on exit for infinite Rx' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/failsafe: fix state synchro cleanup' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/ring: check internal arguments' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'doc: fix EF10 Rx mode name in sfc guide' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'doc: fix typo in pcap " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'net/bnx2x: add QLogic vendor id for BCM57840' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'ethdev: fix memory ordering for callback functions' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix handshake synchronization' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix handshake deadlock' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix buffer use after free' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: handle worker shutdown in burst mode' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: fix shutdown of busy worker' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix return pkt calls in single mode' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: fix freeing mbufs' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: fix lcores statistics' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: collect return mbufs' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix API documentation' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: fix race conditions on shutdown' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix scalar matching' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix flushing in flight packets' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'distributor: fix clearing returns buffer' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: ensure all packets are delivered' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: fix quitting workers in burst mode' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'test/distributor: fix mbuf leak on failure' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'crypto/caam_jr: fix device tree parsing for SEC_ERA' " luca.boccassi
2020-10-28 10:45 ` [dpdk-stable] patch 'doc: add SPDX license tag header to meson guide' " luca.boccassi
2020-10-28 10:46 ` [dpdk-stable] patch 'app: fix missing dependencies' " luca.boccassi
2020-10-28 10:46 ` [dpdk-stable] patch 'examples/l2fwd-crypto: fix missing dependency' " luca.boccassi
2020-10-28 10:46 ` [dpdk-stable] patch 'ipc: fix spelling in log and comment' " luca.boccassi
2020-10-28 10:46 ` [dpdk-stable] patch 'bus/pci: remove unused scan by address' " luca.boccassi
2020-10-28 10:46 ` [dpdk-stable] patch 'eal/linux: fix memory leak in uevent handling' " luca.boccassi
2020-10-28 10:46 ` [dpdk-stable] patch 'crypto/scheduler: fix header install with meson' " luca.boccassi
2020-10-28 10:46 ` [dpdk-stable] patch 'config: add Graviton2(arm64) defconfig' " luca.boccassi
2020-11-09 18:39   ` [dpdk-stable] patch 'efd: fix tailq entry leak in error path' " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'net/softnic: use POSIX network address conversion' " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'examples/ip_pipeline: " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'examples/ipsec-secgw: " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'eal: fix leak on device event callback unregister' " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'mem: fix config name in error logs' " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'examples/ip_pipeline: fix external build' " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'examples/vm_power: fix build on Ubuntu 20.04' " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'examples/multi_process: " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'test/rcu: fix build with low core count' " luca.boccassi
2020-11-09 18:39     ` [dpdk-stable] patch 'examples/performance-thread: " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'test/mbuf: skip field registration at busy offset' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'mbuf: fix typo in dynamic field convention note' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'event/dpaa2: remove dead code from self test' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'crypto/scheduler: remove unused internal seqn' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'doc: remove notice about AES-GCM IV and J0' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'baseband/turbo_sw: fix memory leak in error path' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'crypto/octeontx2: fix multi-process' " luca.boccassi
2020-11-10 10:59       ` [dpdk-stable] [EXT] " Ankur Dwivedi
2020-11-10 11:06         ` Luca Boccassi
2020-11-10 11:34           ` Ankur Dwivedi
2020-11-09 18:40     ` [dpdk-stable] patch 'examples/fips_validation: fix missed version line' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'crypto/dpaa2_sec: remove dead code' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'common/qat: add missing kmod dependency info' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'crypto/octeontx: fix out-of-place support' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'crypto/octeontx2: " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'gso: fix mbuf freeing responsibility' " luca.boccassi
2020-11-09 22:39       ` Ananyev, Konstantin
2020-11-10 10:31         ` Luca Boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/iavf: fix unchecked Tx cleanup error' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'app/testpmd: fix bonding xmit balance policy command' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/bnxt: fix queue release' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/bnxt: fix xstats by id' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/mlx5: fix xstats reset reinitialization' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/mlx5: fix port shared data reference count' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/i40e: fix virtual channel conflict' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ixgbe: check switch domain allocation result' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/i40e: fix QinQ flow pattern to allow non full mask' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ixgbe: fix vector Rx' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/i40e: " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ice: " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/fm10k: " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/iavf: " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/vhost: fix xstats after clearing stats' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'vhost: fix virtqueues metadata allocation' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'vhost: validate index in available entries API' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'vhost: validate index in guest notification " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'vhost: validate index in live-migration " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'vhost: validate index in inflight " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ena: remove unused macro' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/mvpp2: fix memory leak in error path' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/netvsc: allocate contiguous physical memory for RNDIS' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'app/testpmd: fix RSS key for flow API RSS rule' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'raw/ifpga/base: fix interrupt handler instance usage' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'raw/ifpga/base: handle unsupported interrupt type' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'raw/ifpga/base: fix return of IRQ unregister' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ice: update writeback policy to reduce latency' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/bnxt: fix boolean operator usage' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/i40e: fix flow director for eth + VLAN pattern' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ice: fix Rx offload flags in SSE path' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'ethdev: move non-offload capabilities' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ice/base: fix parameter name in comment' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/bnxt: increase size of Rx CQ' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/bnxt: fix resetting mbuf data offset' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/bnxt: fix Rx performance by removing spinlock' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/mlx: do not enforce RSS hash offload' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/vdev_netvsc: fix device probing error flow' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/hns3: fix RSS max queue id allowed in multi-TC' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/hns3: fix data type to store queue number' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/hns3: check setting VF PCI bus return value' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/enic: fix header sizes when copying flow patterns' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ena: fix getting xstats global stats offset' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ena: fix setting Rx checksum flags in mbuf' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/ena/base: align IO CQ allocation to 4K' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'net/thunderx: fix memory leak on rbdr desc ring failure' " luca.boccassi
2020-11-09 18:40     ` [dpdk-stable] patch 'common/mlx5: fix DevX SQ object creation' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'raw/ifpga: terminate string filled by readlink with null' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'raw/ifpga: use trusted buffer to free' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'app/testpmd: do not allow dynamic change of core number' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'net/hns3: fix configurations of port-level scheduling rate' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'app/testpmd: fix max Rx packet length for VLAN packet' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'ethdev: fix data type for port id' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'net/hinic/base: support two or more AEQS for chip' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'net/hinic/base: fix log info for PF command channel' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'fix spellings that Lintian complains about' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'mbuf: fix dynamic fields and flags with multiprocess' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'doc: fix typo in KNI guide' " luca.boccassi
2020-11-09 18:41     ` [dpdk-stable] patch 'doc: remove obsolete deprecation notice for power library' " luca.boccassi
2020-11-09 18:50   ` [dpdk-stable] patch 'eal: fix MCS lock and ticketlock headers install' " luca.boccassi
2020-11-09 18:50     ` [dpdk-stable] patch 'app/testpmd: revert max Rx packet length adjustment' " luca.boccassi
2020-11-17 11:13       ` [dpdk-stable] patch 'devtools: fix build test config inheritance from env' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'devtools: fix x86-default build test install " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'examples: fix flattening directory layout on install' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'examples/l2fwd-keepalive: skip meson build if no librt' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'devtools: fix directory filter in forbidden token check' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'eal/arm: fix clang build of native target' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'examples/qos_sched: fix usage string' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'build: fix install on Windows' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'build: fix MS linker flag with meson 0.54' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'usertools: fix CPU layout script to be PEP8 compliant' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'gro: fix packet type detection with IPv6 tunnel' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'config: enable packet prefetching with Meson' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/bnxt: remove useless prefetches' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/ring: fix typo in log message' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/mlx5: fix switch port id when representor in bonding' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/mlx5: fix Rx queue completion index consistency' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'examples/vhost_crypto: add new line character in usage' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'vhost: fix virtqueue initialization' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/hns3: check PCI config space write' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/i40e: add C++ include guard' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/i40e: fix build for log format specifier' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/iavf: fix releasing mbufs' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/mlx5: fix missing meter packet' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/af_xdp: fix pointer storage size' " luca.boccassi
2020-11-17 11:13         ` [dpdk-stable] patch 'net/iavf: fix performance drop after port reset' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'net/hinic/base: add message check for command channel' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'net/ixgbe: remove redundant MAC flag check' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'vhost: fix error path when setting memory tables' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'vhost: fix fd leak in dirty logging setup' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'vhost: fix fd leak in kick " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'app/testpmd: fix MTU after device configure' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'net/bnxt: fix doorbell barrier location' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'net/mlx5: validate MPLSoGRE with GRE key' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'doc: fix typo in ipsec-secgw guide' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'app/eventdev: check timer adadpters number' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'examples/fips_validation: fix build with pkg-config' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'examples/kni: " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'examples/l2fwd-crypto: " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'examples/ntb: fix clean target' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'examples/performance-thread: fix build with pkg-config' " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'examples/vhost_blk: " luca.boccassi
2020-11-17 11:14         ` [dpdk-stable] patch 'examples/rxtx_callbacks: " luca.boccassi
2020-11-25  9:02           ` [dpdk-stable] patch 'doc: fix rule file parameters in l3fwd-acl guide' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'net/mlx5: fix Rx packet padding config via DevX' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'net/mlx5: fix RSS queue type validation' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'net/mlx5: fix Rx queue count calculation' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'net/mlx5: fix Rx descriptor status' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'net/mlx5: fix raw encap/decap limit' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'common/mlx5: fix name for ConnectX VF device ID' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'app/testpmd: revert setting MTU explicitly after configure' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'net/hns3: fix crash with multi-TC' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'event/octeontx2: unlink queues during port release' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'compress/isal: check allocation in queue setup' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'examples/l3fwd-power: check packet types after start' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'net/mlx5: fix representor interrupts handler' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'malloc: fix style in free list index computation' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'build: fix gcc warning requiring Wformat' " luca.boccassi
2020-11-25  9:02             ` [dpdk-stable] patch 'usertools: fix pmdinfo parsing' " luca.boccassi
2020-11-30 11:50 ` [dpdk-stable] patch 'mcslock: fix hang in weak memory model' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'net/hinic/base: remove queue number limitation' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'net/hinic: remove optical module operation' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'doc: fix grammar' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'doc: add SPDX license tag header to Intel performance guide' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'kni: fix build on RHEL 8.3' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'doc: clarify instructions on running as non-root' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'doc: update information on using hugepages' " luca.boccassi
2020-11-30 11:50   ` [dpdk-stable] patch 'eal/arm: fix build with gcc optimization level 0' " 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=20201028104606.3504127-93-luca.boccassi@gmail.com \
    --to=luca.boccassi@gmail.com \
    --cc=arybchenko@solarflare.com \
    --cc=igor.romanov@oktetlabs.ru \
    --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

patches for DPDK stable branches

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git