patches for DPDK stable branches
 help / color / Atom feed
From: luca.boccassi@gmail.com
To: Xiaoyun Wang <cloud.wangxiaoyun@huawei.com>
Cc: dpdk stable <stable@dpdk.org>
Subject: [dpdk-stable] patch 'net/hinic: allocate IO memory with socket id' has been queued to stable release 19.11.3
Date: Tue, 19 May 2020 13:53:55 +0100
Message-ID: <20200519125804.104349-45-luca.boccassi@gmail.com> (raw)
In-Reply-To: <20200519125804.104349-1-luca.boccassi@gmail.com>

Hi,

FYI, your patch has been queued to stable release 19.11.3

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 05/21/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 7ad364893c33d8ec2f9ef2ed7fa8c076852cc854 Mon Sep 17 00:00:00 2001
From: Xiaoyun Wang <cloud.wangxiaoyun@huawei.com>
Date: Sat, 14 Mar 2020 18:02:06 +0800
Subject: [PATCH] net/hinic: allocate IO memory with socket id

[ upstream commit 1b7b9f170fcebbbd0708fab554dcb5a7badef8cf ]

This patch makes IO memory allocation with socketid,
the txq or rxq descriptor and IO resource can be allocated with
socketid that passed by queue setup ops, which can improve
performance for cross-numa scene.

Signed-off-by: Xiaoyun Wang <cloud.wangxiaoyun@huawei.com>
---
 drivers/net/hinic/base/hinic_compat.h      | 17 ++++++----
 drivers/net/hinic/base/hinic_pmd_api_cmd.c |  7 ++--
 drivers/net/hinic/base/hinic_pmd_cmdq.c    |  3 +-
 drivers/net/hinic/base/hinic_pmd_eqs.c     |  2 +-
 drivers/net/hinic/base/hinic_pmd_hwdev.c   | 37 +++++++++++-----------
 drivers/net/hinic/base/hinic_pmd_hwdev.h   |  1 -
 drivers/net/hinic/base/hinic_pmd_mbox.c    |  6 ++--
 drivers/net/hinic/base/hinic_pmd_nicio.c   | 11 ++++---
 drivers/net/hinic/base/hinic_pmd_wq.c      | 11 ++++---
 drivers/net/hinic/base/hinic_pmd_wq.h      |  2 +-
 drivers/net/hinic/hinic_pmd_ethdev.c       |  7 ++--
 drivers/net/hinic/hinic_pmd_rx.c           | 28 ++++++++--------
 drivers/net/hinic/hinic_pmd_rx.h           |  5 ++-
 drivers/net/hinic/hinic_pmd_tx.c           | 11 ++++---
 drivers/net/hinic/hinic_pmd_tx.h           |  4 ++-
 15 files changed, 81 insertions(+), 71 deletions(-)

diff --git a/drivers/net/hinic/base/hinic_compat.h b/drivers/net/hinic/base/hinic_compat.h
index e4a7f12d15..7bec03b9cb 100644
--- a/drivers/net/hinic/base/hinic_compat.h
+++ b/drivers/net/hinic/base/hinic_compat.h
@@ -150,22 +150,25 @@ static inline int hinic_test_and_set_bit(int nr, volatile unsigned long *addr)
 }
 
 void *dma_zalloc_coherent(void *dev, size_t size, dma_addr_t *dma_handle,
-			  gfp_t flag);
-void *dma_zalloc_coherent_aligned(void *dev, size_t size,
-				dma_addr_t *dma_handle, gfp_t flag);
-void *dma_zalloc_coherent_aligned256k(void *dev, size_t size,
-				dma_addr_t *dma_handle, gfp_t flag);
+			  unsigned int socket_id);
+
+void *dma_zalloc_coherent_aligned(void *hwdev, size_t size,
+		dma_addr_t *dma_handle, unsigned int socket_id);
+
+void *dma_zalloc_coherent_aligned256k(void *hwdev, size_t size,
+			      dma_addr_t *dma_handle, unsigned int socket_id);
+
 void dma_free_coherent(void *dev, size_t size, void *virt, dma_addr_t phys);
 
 /* dma pool alloc and free */
 #define	pci_pool dma_pool
-#define	pci_pool_alloc(pool, flags, handle) dma_pool_alloc(pool, flags, handle)
+#define	pci_pool_alloc(pool, handle) dma_pool_alloc(pool, handle)
 #define	pci_pool_free(pool, vaddr, addr) dma_pool_free(pool, vaddr, addr)
 
 struct dma_pool *dma_pool_create(const char *name, void *dev, size_t size,
 				size_t align, size_t boundary);
 void dma_pool_destroy(struct dma_pool *pool);
-void *dma_pool_alloc(struct pci_pool *pool, int flags, dma_addr_t *dma_addr);
+void *dma_pool_alloc(struct pci_pool *pool, dma_addr_t *dma_addr);
 void dma_pool_free(struct pci_pool *pool, void *vaddr, dma_addr_t dma);
 
 #define kzalloc(size, flag) rte_zmalloc(NULL, size, HINIC_MEM_ALLOC_ALIGN_MIN)
diff --git a/drivers/net/hinic/base/hinic_pmd_api_cmd.c b/drivers/net/hinic/base/hinic_pmd_api_cmd.c
index dbffc2e3b0..b72edc0652 100644
--- a/drivers/net/hinic/base/hinic_pmd_api_cmd.c
+++ b/drivers/net/hinic/base/hinic_pmd_api_cmd.c
@@ -658,7 +658,7 @@ static int alloc_cmd_buf(struct hinic_api_cmd_chain *chain,
 
 	cmd_vaddr_alloc = dma_zalloc_coherent(dev, (API_CMD_BUF_SIZE +
 					      API_PAYLOAD_ALIGN_SIZE),
-					      &cmd_paddr, GFP_KERNEL);
+					      &cmd_paddr, SOCKET_ID_ANY);
 	if (!cmd_vaddr_alloc) {
 		PMD_DRV_LOG(ERR, "Allocate API CMD dma memory failed");
 		return -ENOMEM;
@@ -712,7 +712,7 @@ static int api_cmd_create_cell(struct hinic_api_cmd_chain *chain,
 
 	node_vaddr_alloc = dma_zalloc_coherent(dev, (chain->cell_size +
 					       API_CMD_NODE_ALIGN_SIZE),
-					       &node_paddr, GFP_KERNEL);
+					       &node_paddr, SOCKET_ID_ANY);
 	if (!node_vaddr_alloc) {
 		PMD_DRV_LOG(ERR, "Allocate dma API CMD cell failed");
 		return -ENOMEM;
@@ -889,8 +889,7 @@ static int api_chain_init(struct hinic_api_cmd_chain *chain,
 
 	chain->wb_status = (struct hinic_api_cmd_status *)
 			   dma_zalloc_coherent(dev, sizeof(*chain->wb_status),
-					       &chain->wb_status_paddr,
-					       GFP_KERNEL);
+				&chain->wb_status_paddr, SOCKET_ID_ANY);
 	if (!chain->wb_status) {
 		PMD_DRV_LOG(ERR, "Allocate DMA wb status failed");
 		err = -ENOMEM;
diff --git a/drivers/net/hinic/base/hinic_pmd_cmdq.c b/drivers/net/hinic/base/hinic_pmd_cmdq.c
index eb8de24d6e..d73e2bf592 100644
--- a/drivers/net/hinic/base/hinic_pmd_cmdq.c
+++ b/drivers/net/hinic/base/hinic_pmd_cmdq.c
@@ -171,8 +171,7 @@ struct hinic_cmd_buf *hinic_alloc_cmd_buf(void *hwdev)
 		return NULL;
 	}
 
-	cmd_buf->buf = pci_pool_alloc(cmdqs->cmd_buf_pool, GFP_KERNEL,
-				      &cmd_buf->dma_addr);
+	cmd_buf->buf = pci_pool_alloc(cmdqs->cmd_buf_pool, &cmd_buf->dma_addr);
 	if (!cmd_buf->buf) {
 		PMD_DRV_LOG(ERR, "Allocate cmd from the pool failed");
 		goto alloc_pci_buf_err;
diff --git a/drivers/net/hinic/base/hinic_pmd_eqs.c b/drivers/net/hinic/base/hinic_pmd_eqs.c
index abe0daee6c..79e1b20bca 100644
--- a/drivers/net/hinic/base/hinic_pmd_eqs.c
+++ b/drivers/net/hinic/base/hinic_pmd_eqs.c
@@ -240,7 +240,7 @@ static int alloc_eq_pages(struct hinic_eq *eq)
 		eq->virt_addr[pg_num] =
 			(u8 *)dma_zalloc_coherent_aligned(eq->hwdev,
 					eq->page_size, &eq->dma_addr[pg_num],
-					GFP_KERNEL);
+					SOCKET_ID_ANY);
 		if (!eq->virt_addr[pg_num]) {
 			err = -ENOMEM;
 			goto dma_alloc_err;
diff --git a/drivers/net/hinic/base/hinic_pmd_hwdev.c b/drivers/net/hinic/base/hinic_pmd_hwdev.c
index fd0292f84c..cf2a9701f2 100644
--- a/drivers/net/hinic/base/hinic_pmd_hwdev.c
+++ b/drivers/net/hinic/base/hinic_pmd_hwdev.c
@@ -112,9 +112,9 @@ void hinic_be32_to_cpu(void *data, u32 len)
 	}
 }
 
-static void *
-hinic_dma_mem_zalloc(struct hinic_hwdev *hwdev, size_t size,
-		dma_addr_t *dma_handle, unsigned int flag, unsigned int align)
+static void *hinic_dma_mem_zalloc(struct hinic_hwdev *hwdev, size_t size,
+			   dma_addr_t *dma_handle, unsigned int align,
+			   unsigned int socket_id)
 {
 	int rc, alloc_cnt;
 	const struct rte_memzone *mz;
@@ -129,8 +129,8 @@ hinic_dma_mem_zalloc(struct hinic_hwdev *hwdev, size_t size,
 	snprintf(z_name, sizeof(z_name), "%s_%d",
 		 hwdev->pcidev_hdl->name, alloc_cnt);
 
-	mz = rte_memzone_reserve_aligned(z_name, size, SOCKET_ID_ANY,
-					 flag, align);
+	mz = rte_memzone_reserve_aligned(z_name, size, socket_id,
+					 RTE_MEMZONE_IOVA_CONTIG, align);
 	if (!mz) {
 		PMD_DRV_LOG(ERR, "Alloc dma able memory failed, errno: %d, ma_name: %s, size: 0x%zx",
 			    rte_errno, z_name, size);
@@ -209,25 +209,26 @@ hinic_dma_mem_free(struct hinic_hwdev *hwdev, size_t size,
 	(void)rte_memzone_free(mz);
 }
 
-void *dma_zalloc_coherent(void *hwdev, size_t size,
-			  dma_addr_t *dma_handle, gfp_t flag)
+void *dma_zalloc_coherent(void *hwdev, size_t size, dma_addr_t *dma_handle,
+			  unsigned int socket_id)
 {
-	return hinic_dma_mem_zalloc(hwdev, size, dma_handle, flag,
-				    RTE_CACHE_LINE_SIZE);
+	return hinic_dma_mem_zalloc(hwdev, size, dma_handle,
+				    RTE_CACHE_LINE_SIZE, socket_id);
 }
 
 void *dma_zalloc_coherent_aligned(void *hwdev, size_t size,
-				  dma_addr_t *dma_handle, gfp_t flag)
+				dma_addr_t *dma_handle, unsigned int socket_id)
 {
-	return hinic_dma_mem_zalloc(hwdev, size, dma_handle, flag,
-				    HINIC_PAGE_SIZE);
+	return hinic_dma_mem_zalloc(hwdev, size, dma_handle, HINIC_PAGE_SIZE,
+				    socket_id);
 }
 
 void *dma_zalloc_coherent_aligned256k(void *hwdev, size_t size,
-				      dma_addr_t *dma_handle, gfp_t flag)
+				      dma_addr_t *dma_handle,
+				      unsigned int socket_id)
 {
-	return hinic_dma_mem_zalloc(hwdev, size, dma_handle, flag,
-				    HINIC_PAGE_SIZE * 64);
+	return hinic_dma_mem_zalloc(hwdev, size, dma_handle,
+				    HINIC_PAGE_SIZE * 64, socket_id);
 }
 
 void dma_free_coherent(void *hwdev, size_t size, void *virt, dma_addr_t phys)
@@ -304,12 +305,12 @@ void dma_pool_destroy(struct dma_pool *pool)
 	rte_free(pool);
 }
 
-void *dma_pool_alloc(struct pci_pool *pool, int flags, dma_addr_t *dma_addr)
+void *dma_pool_alloc(struct pci_pool *pool, dma_addr_t *dma_addr)
 {
 	void *buf;
 
-	buf = hinic_dma_mem_zalloc(pool->hwdev, pool->elem_size,
-				   dma_addr, flags, (u32)pool->align);
+	buf = hinic_dma_mem_zalloc(pool->hwdev, pool->elem_size, dma_addr,
+				(u32)pool->align, SOCKET_ID_ANY);
 	if (buf)
 		rte_atomic32_inc(&pool->inuse);
 
diff --git a/drivers/net/hinic/base/hinic_pmd_hwdev.h b/drivers/net/hinic/base/hinic_pmd_hwdev.h
index ac21947dc2..d6896b3f13 100644
--- a/drivers/net/hinic/base/hinic_pmd_hwdev.h
+++ b/drivers/net/hinic/base/hinic_pmd_hwdev.h
@@ -442,7 +442,6 @@ struct hinic_hwdev {
 	struct hinic_msg_pf_to_mgmt *pf_to_mgmt;
 	struct hinic_cmdqs *cmdqs;
 	struct hinic_nic_io *nic_io;
-
 };
 
 int hinic_osdep_init(struct hinic_hwdev *hwdev);
diff --git a/drivers/net/hinic/base/hinic_pmd_mbox.c b/drivers/net/hinic/base/hinic_pmd_mbox.c
index 3d3c1bc4ab..935d60bc81 100644
--- a/drivers/net/hinic/base/hinic_pmd_mbox.c
+++ b/drivers/net/hinic/base/hinic_pmd_mbox.c
@@ -404,10 +404,8 @@ static int alloc_mbox_wb_status(struct hinic_mbox_func_to_func *func_to_func)
 	struct hinic_hwif *hwif = hwdev->hwif;
 	u32 addr_h, addr_l;
 
-	send_mbox->wb_vaddr = dma_zalloc_coherent(hwdev,
-				  MBOX_WB_STATUS_LEN,
-				  &send_mbox->wb_paddr,
-				  GFP_KERNEL);
+	send_mbox->wb_vaddr = dma_zalloc_coherent(hwdev, MBOX_WB_STATUS_LEN,
+					&send_mbox->wb_paddr, SOCKET_ID_ANY);
 	if (!send_mbox->wb_vaddr) {
 		PMD_DRV_LOG(ERR, "Allocating memory for mailbox wb status failed");
 		return -ENOMEM;
diff --git a/drivers/net/hinic/base/hinic_pmd_nicio.c b/drivers/net/hinic/base/hinic_pmd_nicio.c
index f6cc03341b..59e39ed984 100644
--- a/drivers/net/hinic/base/hinic_pmd_nicio.c
+++ b/drivers/net/hinic/base/hinic_pmd_nicio.c
@@ -728,9 +728,10 @@ void hinic_update_rq_local_ci(struct hinic_hwdev *hwdev, u16 q_id, int wqe_cnt)
 
 static int hinic_alloc_nicio(struct hinic_hwdev *hwdev)
 {
-	int err;
+	struct hinic_nic_io *nic_io = hwdev->nic_io;
+	struct rte_pci_device *pdev = hwdev->pcidev_hdl;
 	u16 max_qps, num_qp;
-	struct hinic_nic_io *nic_io = hwdev->nic_io;
+	int err;
 
 	max_qps = hinic_func_max_qnum(hwdev);
 	if ((max_qps & (max_qps - 1))) {
@@ -751,10 +752,10 @@ static int hinic_alloc_nicio(struct hinic_hwdev *hwdev)
 		goto alloc_qps_err;
 	}
 
-	nic_io->ci_vaddr_base =
-		dma_zalloc_coherent(hwdev,
+	nic_io->ci_vaddr_base = dma_zalloc_coherent(hwdev,
 				    CI_TABLE_SIZE(num_qp, HINIC_PAGE_SIZE),
-				    &nic_io->ci_dma_base, GFP_KERNEL);
+				    &nic_io->ci_dma_base,
+				    pdev->device.numa_node);
 	if (!nic_io->ci_vaddr_base) {
 		PMD_DRV_LOG(ERR, "Failed to allocate ci area");
 		err = -ENOMEM;
diff --git a/drivers/net/hinic/base/hinic_pmd_wq.c b/drivers/net/hinic/base/hinic_pmd_wq.c
index 04c81f9bc8..345248c3ea 100644
--- a/drivers/net/hinic/base/hinic_pmd_wq.c
+++ b/drivers/net/hinic/base/hinic_pmd_wq.c
@@ -15,13 +15,14 @@ static void free_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq)
 	wq->queue_buf_vaddr = 0;
 }
 
-static int alloc_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq)
+static int alloc_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq,
+			unsigned int socket_id)
 {
 	dma_addr_t dma_addr = 0;
 
 	wq->queue_buf_vaddr = (u64)(u64 *)
 		dma_zalloc_coherent_aligned256k(hwdev, wq->wq_buf_size,
-						&dma_addr, GFP_KERNEL);
+						&dma_addr, socket_id);
 	if (!wq->queue_buf_vaddr) {
 		PMD_DRV_LOG(ERR, "Failed to allocate wq page");
 		return -ENOMEM;
@@ -40,7 +41,7 @@ static int alloc_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq)
 }
 
 int hinic_wq_allocate(struct hinic_hwdev *hwdev, struct hinic_wq *wq,
-		      u32 wqebb_shift, u16 q_depth)
+		      u32 wqebb_shift, u16 q_depth, unsigned int socket_id)
 {
 	int err;
 
@@ -60,7 +61,7 @@ int hinic_wq_allocate(struct hinic_hwdev *hwdev, struct hinic_wq *wq,
 		return -EINVAL;
 	}
 
-	err = alloc_wq_pages(hwdev, wq);
+	err = alloc_wq_pages(hwdev, wq, socket_id);
 	if (err) {
 		PMD_DRV_LOG(ERR, "Failed to allocate wq pages");
 		return err;
@@ -114,7 +115,7 @@ int hinic_cmdq_alloc(struct hinic_wq *wq, struct hinic_hwdev *hwdev,
 		wq[i].wq_buf_size = wq_buf_size;
 		wq[i].q_depth = q_depth;
 
-		err = alloc_wq_pages(hwdev, &wq[i]);
+		err = alloc_wq_pages(hwdev, &wq[i], SOCKET_ID_ANY);
 		if (err) {
 			PMD_DRV_LOG(ERR, "Failed to alloc CMDQ blocks");
 			goto cmdq_block_err;
diff --git a/drivers/net/hinic/base/hinic_pmd_wq.h b/drivers/net/hinic/base/hinic_pmd_wq.h
index 53ecc225c8..354d0338de 100644
--- a/drivers/net/hinic/base/hinic_pmd_wq.h
+++ b/drivers/net/hinic/base/hinic_pmd_wq.h
@@ -122,7 +122,7 @@ void hinic_cmdq_free(struct hinic_hwdev *hwdev, struct hinic_wq *wq,
 		     int cmdq_blocks);
 
 int hinic_wq_allocate(struct hinic_hwdev *hwdev, struct hinic_wq *wq,
-		      u32 wqebb_shift, u16 q_depth);
+		      u32 wqebb_shift, u16 q_depth, unsigned int socket_id);
 
 void hinic_wq_free(struct hinic_hwdev *hwdev, struct hinic_wq *wq);
 
diff --git a/drivers/net/hinic/hinic_pmd_ethdev.c b/drivers/net/hinic/hinic_pmd_ethdev.c
index 803a39e2da..8493f6e42c 100644
--- a/drivers/net/hinic/hinic_pmd_ethdev.c
+++ b/drivers/net/hinic/hinic_pmd_ethdev.c
@@ -57,6 +57,7 @@
 #define HINIC_DEFAULT_BURST_SIZE	32
 #define HINIC_DEFAULT_NB_QUEUES		1
 #define HINIC_DEFAULT_RING_SIZE		1024
+#define HINIC_MAX_LRO_SIZE		65536
 
 /*
  * vlan_id is a 12 bit number.
@@ -439,7 +440,7 @@ static int hinic_rx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx,
 	nic_dev->rxqs[queue_idx] = rxq;
 
 	/* alloc rx sq hw wqepage*/
-	rc = hinic_create_rq(hwdev, queue_idx, rq_depth);
+	rc = hinic_create_rq(hwdev, queue_idx, rq_depth, socket_id);
 	if (rc) {
 		PMD_DRV_LOG(ERR, "Create rxq[%d] failed, dev_name: %s, rq_depth: %d",
 			    queue_idx, dev->data->name, rq_depth);
@@ -466,6 +467,7 @@ static int hinic_rx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx,
 	rxq->q_depth = rq_depth;
 	rxq->buf_len = (u16)buf_size;
 	rxq->rx_free_thresh = rx_free_thresh;
+	rxq->socket_id = socket_id;
 
 	/* the last point cant do mbuf rearm in bulk */
 	rxq->rxinfo_align_end = rxq->q_depth - rxq->rx_free_thresh;
@@ -593,7 +595,7 @@ static int hinic_tx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx,
 	nic_dev->txqs[queue_idx] = txq;
 
 	/* alloc tx sq hw wqepage */
-	rc = hinic_create_sq(hwdev, queue_idx, sq_depth);
+	rc = hinic_create_sq(hwdev, queue_idx, sq_depth, socket_id);
 	if (rc) {
 		PMD_DRV_LOG(ERR, "Create txq[%d] failed, dev_name: %s, sq_depth: %d",
 			    queue_idx, dev->data->name, sq_depth);
@@ -612,6 +614,7 @@ static int hinic_tx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx,
 	txq->sq_bot_sge_addr = HINIC_GET_WQ_TAIL(txq) -
 					sizeof(struct hinic_sq_bufdesc);
 	txq->cos = nic_dev->default_cos;
+	txq->socket_id = socket_id;
 
 	/* alloc software txinfo */
 	rc = hinic_setup_tx_resources(txq);
diff --git a/drivers/net/hinic/hinic_pmd_rx.c b/drivers/net/hinic/hinic_pmd_rx.c
index f865f2f470..f1b873afb7 100644
--- a/drivers/net/hinic/hinic_pmd_rx.c
+++ b/drivers/net/hinic/hinic_pmd_rx.c
@@ -209,7 +209,8 @@ void hinic_get_func_rx_buf_size(struct hinic_nic_dev *nic_dev)
 	nic_dev->hwdev->nic_io->rq_buf_size = buf_size;
 }
 
-int hinic_create_rq(struct hinic_hwdev *hwdev, u16 q_id, u16 rq_depth)
+int hinic_create_rq(struct hinic_hwdev *hwdev, u16 q_id,
+			u16 rq_depth, unsigned int socket_id)
 {
 	int err;
 	struct hinic_nic_io *nic_io = hwdev->nic_io;
@@ -223,17 +224,15 @@ int hinic_create_rq(struct hinic_hwdev *hwdev, u16 q_id, u16 rq_depth)
 	nic_io->rq_depth = rq_depth;
 
 	err = hinic_wq_allocate(hwdev, &nic_io->rq_wq[q_id],
-				HINIC_RQ_WQEBB_SHIFT, nic_io->rq_depth);
+			HINIC_RQ_WQEBB_SHIFT, nic_io->rq_depth, socket_id);
 	if (err) {
 		PMD_DRV_LOG(ERR, "Failed to allocate WQ for RQ");
 		return err;
 	}
 	rq->wq = &nic_io->rq_wq[q_id];
 
-	rq->pi_virt_addr =
-		(volatile u16 *)dma_zalloc_coherent(hwdev, HINIC_PAGE_SIZE,
-						    &rq->pi_dma_addr,
-						    GFP_KERNEL);
+	rq->pi_virt_addr = (volatile u16 *)dma_zalloc_coherent(hwdev,
+			HINIC_PAGE_SIZE, &rq->pi_dma_addr, socket_id);
 	if (!rq->pi_virt_addr) {
 		PMD_DRV_LOG(ERR, "Failed to allocate rq pi virt addr");
 		err = -ENOMEM;
@@ -305,15 +304,13 @@ void hinic_rxq_stats_reset(struct hinic_rxq *rxq)
 	memset(rxq_stats, 0, sizeof(*rxq_stats));
 }
 
-static int hinic_rx_alloc_cqe(struct hinic_rxq *rxq)
+static int hinic_rx_alloc_cqe(struct hinic_rxq *rxq, unsigned int socket_id)
 {
 	size_t cqe_mem_size;
 
 	cqe_mem_size = sizeof(struct hinic_rq_cqe) * rxq->q_depth;
-	rxq->cqe_start_vaddr =
-		dma_zalloc_coherent(rxq->nic_dev->hwdev,
-				    cqe_mem_size, &rxq->cqe_start_paddr,
-				    GFP_KERNEL);
+	rxq->cqe_start_vaddr = dma_zalloc_coherent(rxq->nic_dev->hwdev,
+				cqe_mem_size, &rxq->cqe_start_paddr, socket_id);
 	if (!rxq->cqe_start_vaddr) {
 		PMD_DRV_LOG(ERR, "Allocate cqe dma memory failed");
 		return -ENOMEM;
@@ -369,11 +366,12 @@ int hinic_setup_rx_resources(struct hinic_rxq *rxq)
 	int err, pkts;
 
 	rx_info_sz = rxq->q_depth * sizeof(*rxq->rx_info);
-	rxq->rx_info = kzalloc_aligned(rx_info_sz, GFP_KERNEL);
+	rxq->rx_info = rte_zmalloc_socket("rx_info", rx_info_sz,
+				RTE_CACHE_LINE_SIZE, rxq->socket_id);
 	if (!rxq->rx_info)
 		return -ENOMEM;
 
-	err = hinic_rx_alloc_cqe(rxq);
+	err = hinic_rx_alloc_cqe(rxq, rxq->socket_id);
 	if (err) {
 		PMD_DRV_LOG(ERR, "Allocate rx cqe failed");
 		goto rx_cqe_err;
@@ -392,7 +390,7 @@ rx_fill_err:
 	hinic_rx_free_cqe(rxq);
 
 rx_cqe_err:
-	kfree(rxq->rx_info);
+	rte_free(rxq->rx_info);
 	rxq->rx_info = NULL;
 
 	return err;
@@ -404,7 +402,7 @@ void hinic_free_rx_resources(struct hinic_rxq *rxq)
 		return;
 
 	hinic_rx_free_cqe(rxq);
-	kfree(rxq->rx_info);
+	rte_free(rxq->rx_info);
 	rxq->rx_info = NULL;
 }
 
diff --git a/drivers/net/hinic/hinic_pmd_rx.h b/drivers/net/hinic/hinic_pmd_rx.h
index 1a80f95af4..49fa565173 100644
--- a/drivers/net/hinic/hinic_pmd_rx.h
+++ b/drivers/net/hinic/hinic_pmd_rx.h
@@ -82,6 +82,8 @@ struct hinic_rxq {
 	u16 rx_free_thresh;
 	u16 rxinfo_align_end;
 
+	u32 socket_id;
+
 	unsigned long status;
 	struct hinic_rxq_stats rxq_stats;
 
@@ -121,7 +123,8 @@ void hinic_rx_remove_configure(struct rte_eth_dev *dev);
 
 void hinic_get_func_rx_buf_size(struct hinic_nic_dev *nic_dev);
 
-int hinic_create_rq(struct hinic_hwdev *hwdev, u16 q_id, u16 rq_depth);
+int hinic_create_rq(struct hinic_hwdev *hwdev, u16 q_id,
+			u16 rq_depth, unsigned int socket_id);
 
 void hinic_destroy_rq(struct hinic_hwdev *hwdev, u16 q_id);
 
diff --git a/drivers/net/hinic/hinic_pmd_tx.c b/drivers/net/hinic/hinic_pmd_tx.c
index 985540a935..64ec2c1198 100644
--- a/drivers/net/hinic/hinic_pmd_tx.c
+++ b/drivers/net/hinic/hinic_pmd_tx.c
@@ -1216,7 +1216,8 @@ int hinic_setup_tx_resources(struct hinic_txq *txq)
 	u64 tx_info_sz;
 
 	tx_info_sz = txq->q_depth * sizeof(*txq->tx_info);
-	txq->tx_info = kzalloc_aligned(tx_info_sz, GFP_KERNEL);
+	txq->tx_info = rte_zmalloc_socket("tx_info", tx_info_sz,
+			RTE_CACHE_LINE_SIZE, txq->socket_id);
 	if (!txq->tx_info)
 		return -ENOMEM;
 
@@ -1228,11 +1229,12 @@ void hinic_free_tx_resources(struct hinic_txq *txq)
 	if (txq->tx_info == NULL)
 		return;
 
-	kfree(txq->tx_info);
+	rte_free(txq->tx_info);
 	txq->tx_info = NULL;
 }
 
-int hinic_create_sq(struct hinic_hwdev *hwdev, u16 q_id, u16 sq_depth)
+int hinic_create_sq(struct hinic_hwdev *hwdev, u16 q_id,
+			u16 sq_depth, unsigned int socket_id)
 {
 	int err;
 	struct hinic_nic_io *nic_io = hwdev->nic_io;
@@ -1246,7 +1248,8 @@ int hinic_create_sq(struct hinic_hwdev *hwdev, u16 q_id, u16 sq_depth)
 
 	/* alloc wq */
 	err = hinic_wq_allocate(nic_io->hwdev, &nic_io->sq_wq[q_id],
-				HINIC_SQ_WQEBB_SHIFT, nic_io->sq_depth);
+				HINIC_SQ_WQEBB_SHIFT, nic_io->sq_depth,
+				socket_id);
 	if (err) {
 		PMD_DRV_LOG(ERR, "Failed to allocate WQ for SQ");
 		return err;
diff --git a/drivers/net/hinic/hinic_pmd_tx.h b/drivers/net/hinic/hinic_pmd_tx.h
index a1ca580b1b..dabbc6c1d8 100644
--- a/drivers/net/hinic/hinic_pmd_tx.h
+++ b/drivers/net/hinic/hinic_pmd_tx.h
@@ -114,6 +114,7 @@ struct hinic_txq {
 	u16 q_id;
 	u16 q_depth;
 	u32 cos;
+	u32 socket_id;
 
 	/* cacheline1 */
 	struct hinic_txq_stats txq_stats;
@@ -137,7 +138,8 @@ void hinic_txq_get_stats(struct hinic_txq *txq, struct hinic_txq_stats *stats);
 
 void hinic_txq_stats_reset(struct hinic_txq *txq);
 
-int hinic_create_sq(struct hinic_hwdev *hwdev, u16 q_id, u16 sq_depth);
+int hinic_create_sq(struct hinic_hwdev *hwdev, u16 q_id,
+			u16 sq_depth, unsigned int socket_id);
 
 void hinic_destroy_sq(struct hinic_hwdev *hwdev, u16 q_id);
 
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-05-19 13:56:20.679295052 +0100
+++ 0045-net-hinic-allocate-IO-memory-with-socket-id.patch	2020-05-19 13:56:18.267502683 +0100
@@ -1,15 +1,15 @@
-From 1b7b9f170fcebbbd0708fab554dcb5a7badef8cf Mon Sep 17 00:00:00 2001
+From 7ad364893c33d8ec2f9ef2ed7fa8c076852cc854 Mon Sep 17 00:00:00 2001
 From: Xiaoyun Wang <cloud.wangxiaoyun@huawei.com>
 Date: Sat, 14 Mar 2020 18:02:06 +0800
 Subject: [PATCH] net/hinic: allocate IO memory with socket id
 
+[ upstream commit 1b7b9f170fcebbbd0708fab554dcb5a7badef8cf ]
+
 This patch makes IO memory allocation with socketid,
 the txq or rxq descriptor and IO resource can be allocated with
 socketid that passed by queue setup ops, which can improve
 performance for cross-numa scene.
 
-Cc: stable@dpdk.org
-
 Signed-off-by: Xiaoyun Wang <cloud.wangxiaoyun@huawei.com>
 ---
  drivers/net/hinic/base/hinic_compat.h      | 17 ++++++----
@@ -30,10 +30,10 @@
  15 files changed, 81 insertions(+), 71 deletions(-)
 
 diff --git a/drivers/net/hinic/base/hinic_compat.h b/drivers/net/hinic/base/hinic_compat.h
-index b72e8cfe26..921b83012e 100644
+index e4a7f12d15..7bec03b9cb 100644
 --- a/drivers/net/hinic/base/hinic_compat.h
 +++ b/drivers/net/hinic/base/hinic_compat.h
-@@ -149,22 +149,25 @@ static inline int hinic_test_and_set_bit(int nr, volatile unsigned long *addr)
+@@ -150,22 +150,25 @@ static inline int hinic_test_and_set_bit(int nr, volatile unsigned long *addr)
  }
  
  void *dma_zalloc_coherent(void *dev, size_t size, dma_addr_t *dma_handle,

  parent reply index

Thread overview: 371+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-19 12:53 [dpdk-stable] patch 'crypto/octeontx2: fix build with gcc 10' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'test: " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'app/pipeline: " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'examples/vhost_blk: " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'examples/eventdev: " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'examples/qos_sched: " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'drivers: add crypto as dependency for event drivers' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'drivers/crypto: fix build with make 4.3' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'eal: fix log message print for regex' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'eal/arm64: fix precise TSC' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'mem: mark pages as not accessed when reserving VA' " luca.boccassi
2020-06-09 13:45   ` Kevin Traynor
2020-06-09 14:14     ` Luca Boccassi
2020-06-12  8:00       ` Luca Boccassi
2020-06-16  8:13         ` David Marchand
2020-06-16 10:41           ` Luca Boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'service: fix crash on exit' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'telemetry: fix port stats retrieval' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'pci: remove unneeded includes in public header file' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'pci: fix build on FreeBSD' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'pci: fix build on ppc' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'build: fix linker warnings with clang on Windows' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/octeontx2: fix link information for loopback port' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/i40e: relax barrier in Tx' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/mlx5: fix VLAN PCP item calculation' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/i40e: fix X722 performance' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/ice: fix hash flow crash' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/enetc: fix Rx lock-up' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/ice: remove unnecessary variable' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'doc: fix number of failsafe sub-devices' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc: fix reported promiscuous/multicast mode' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/vmxnet3: fix RSS setting on v4' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc: fix initialization error path' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc: fix Rx queue start failure " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/ice: remove bulk alloc option' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/mlx5: fix mask used for IPv6 item validation' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'build: support MinGW-w64 with Meson' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/memif: fix init when already connected' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/hinic: fix snprintf length of cable info' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/hinic: fix repeating cable log and length check' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/hns3: fix promiscuous mode for PF' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'ethdev: fix spelling' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc: fix promiscuous and allmulticast toggles errors' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc: set priority of created filters to manual' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc/base: reduce filter priorities to implemented only' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc/base: reject automatic filter creation by users' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc/base: refactor filter lookup loop in EF10' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/sfc/base: handle manual and auto filter clashes " luca.boccassi
2020-05-20  9:53   ` Igor Romanov
2020-05-20 11:57     ` Luca Boccassi
2020-05-20 12:12       ` Igor Romanov
2020-05-20 16:50         ` Luca Boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/mlx5: fix zero metadata action' " luca.boccassi
2020-05-19 12:53 ` luca.boccassi [this message]
2020-05-19 12:53 ` [dpdk-stable] patch 'net/mlx5: fix CVLAN tag set in IP item translation' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'net/mlx5: reduce Tx completion index memory loads' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'contigmem: cleanup properly when load fails' " luca.boccassi
2020-05-19 12:53 ` [dpdk-stable] patch 'devtools: fix symbol map change check' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'test: load drivers when required' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'test: skip some subtests in no-huge mode' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'eal/freebsd: fix queuing duplicate alarm callbacks' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'mem: preallocate VA space in no-huge mode' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'test/kvargs: fix to consider empty elements as valid' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'test/kvargs: fix invalid cases check' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'kvargs: fix buffer overflow when parsing list' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'bus/pci: fix devargs on probing again' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'ci: fix telemetry dependency in Travis' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'fib: fix headers for C++ support' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'cryptodev: fix missing device id range checking' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'common/qat: fix GEN3 marketing name' " luca.boccassi
2020-06-04 17:13   ` Trahe, Fiona
2020-06-05  7:52     ` Luca Boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'test/ipsec: fix crash in session destroy' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'baseband/turbo_sw: fix exposed LLR decimals assumption' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'crypto/nitrox: fix CSR register address generation' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'crypto/nitrox: fix oversized device name' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'event/dsw: remove redundant control ring poll' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'event/dsw: remove unnecessary read barrier' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'doc: fix sphinx compatibility' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'ipsec: fix build dependency on hash lib' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'log: fix level picked with globbing on type register' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'doc: fix matrix CSS for recent sphinx' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'eal: fix PRNG init with HPET enabled' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'vfio: fix race condition with sysfs' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'vfio: fix use after free with multiprocess' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'drivers: fix log type variables for -fno-common' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'cryptodev: add asymmetric session-less feature name' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'drivers/crypto: fix log type variables for -fno-common' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'test/crypto: fix flag check' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'crypto/openssl: fix out-of-place encryption' " luca.boccassi
2020-05-19 12:54 ` [dpdk-stable] patch 'security: fix verification of parameters' " luca.boccassi
2020-05-19 13:02 ` [dpdk-stable] patch 'security: fix return types in documentation' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'security: fix session counter' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'test: remove redundant macro' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix packets offload features flags in Rx' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix default error code of command interface' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix crash when flushing RSS flow rules with FLR' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix configuring illegal VLAN PVID' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix status after repeated resets' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hinic: fix LRO' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hinic/base: fix port start during FW hot update' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ipn3ke: use control thread to check link status' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix configuring RSS hash when rules are flushed' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix mailbox opcode data type' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/hns3: fix return value of setting VLAN offload' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice/base: fix uninitialized stack variables' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice/base: read PSM clock frequency from register' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice/base: minor fixes' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice/base: fix MAC write command' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ixgbe: fix link status inconsistencies' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/mlx5: fix validation of VXLAN/VXLAN-GPE specs' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/mlx5: fix metadata for compressed Rx CQEs' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/mlx5: update VLAN and encap actions validation' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/mlx5: fix call to modify action without init item' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/mlx5: fix zero value validation for metadata' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'examples/vmdq: fix output of pools/queues' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/mvneta: do not use PMD log type' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/virtio: " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/tap: " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/pfe: " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/bnxt: " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/dpaa: use dynamic " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/thunderx: " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/mlx5: fix imissed counter overflow' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice/base: fix binary order for GTPU filter' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice/base: check memory pointer before copying' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/tap: remove unused assert' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/octeontx: fix meson build for disabled drivers' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/octeontx2: fix device configuration sequence' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice: change default tunnel type' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice: add action number check for switch' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/ice: fix input set of VLAN item' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/netvsc: propagate descriptor limits from VF' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/netvsc: handle Rx packets during multi-channel setup' " luca.boccassi
2020-05-19 13:02   ` [dpdk-stable] patch 'net/netvsc: split send buffers from Tx descriptors' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/netvsc: fix memory free on device close' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/netvsc: remove process event optimization' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/netvsc: handle Tx completions based on burst size' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/netvsc: avoid possible live lock' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/memif: fix resource leak' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'ethdev: fix build when vtune profiling is on' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'examples/vmdq: fix RSS configuration' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/nfp: fix log format specifiers' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/nfp: fix dangling pointer on probe failure' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ice: fix RSS advanced rule' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ice/base: remove unused code in switch " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ena/base: make allocation macros thread-safe' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ena/base: prevent allocation of zero sized memory' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ena/base: fix documentation of functions' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ena/base: fix indentation in CQ polling' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ena/base: fix indentation of multiple defines' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/ena: set IO ring size to valid value' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: fix counter container usage' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'app/testpmd: fix PPPoE flow command' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/pfe: fix double free of MAC address' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/null: fix secondary burst function selection' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/null: remove redundant check' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/hinic/base: fix PF firmware hot-active problem' " luca.boccassi
2020-05-20 12:29     ` Wangxiaoyun (Cloud)
2020-05-20 12:48       ` Kevin Traynor
2020-05-20 16:55       ` Luca Boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'vhost/crypto: add missing user protocol flag' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'vhost: fix packed ring zero-copy' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/vhost: fix potential memory leak on close' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/virtio: fix outdated comment' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'vhost: remove unused variable' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'vhost: make IOTLB cache name unique among processes' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/hns3: clear residual flow rules on init' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/hns3: add RSS hash offload to capabilities' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/hns3: fix RSS key length' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/hns3: fix default VLAN filter configuration for PF' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/hns3: fix VLAN filter when setting promisucous mode' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'common/mlx5: fix build with -fno-common' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx4: " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: use open/read/close for ib stats query' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/octeontx2: enable error and RAS interrupt in configure' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/octeontx2: disable unnecessary error interrupts' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/i40e: relax barrier in Tx for NEON' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: add device parameter for MPRQ stride size' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: enable MPRQ multi-stride operations' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: add multi-segment packets in MPRQ mode' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: fix meter suffix table leak' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: fix jump " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/enic: fix flow action reordering' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: fix push VLAN action to use item info' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/mlx5: fix validation of push VLAN without full mask' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/tap: fix mbuf double free when writev fails' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/tap: fix mbuf and mem leak during queue release' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/tap: fix check for mbuf number of segment' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/tap: fix file close on remove' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/tap: fix fd leak on creation failure' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/tap: fix unexpected link handler' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'vhost: fix shadow update' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'vhost: fix shadowed descriptors not flushed' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/virtio-user: fix devargs parsing' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/tap: fix queues fd check before close' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'net/i40e: fix flow director initialisation' " luca.boccassi
2020-05-19 13:03   ` [dpdk-stable] patch 'common/mlx5: fix build with rdma-core 21' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix crash when releasing meter table' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix header modify action validation' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: set dynamic flow metadata in Rx queues' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: improve logging of MPRQ selection' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/ixgbe: fix resource leak after thread exits normally' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/ixgbe: fix link status after port reset' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/iavf: fix stats query error code' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/bnxt: fix HWRM command during FW reset' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/bnxt: use true/false for bool types' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/bnxt: fix port start failure handling' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/bnxt: fix VLAN add when port is stopped' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'security: fix crash at accessing non-implemented ops' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'mempool: remove inline functions from export list' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'lpm6: fix size of tbl8 group' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'lpm6: fix comments spelling' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'eal: " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'timer: protect initialization with lock' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'fix various typos found by Lintian' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'app: fix usage help of options separated by dashes' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'usertools: check for pci.ids in /usr/share/misc' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'bus/pci: fix UIO resource access from secondary process' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/bnxt: fix memory leak during queue restart' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/bnxt: fix VNIC Rx queue count on VNIC free' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'app/testpmd: add parsing for QinQ VLAN headers' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'doc: fix log level example in Linux guide' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'eal: fix typo in endian conversion macros' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/avp: fix gcc 10 maybe-uninitialized warning' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'examples/ipsec-gw: " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'eal/x86: ignore gcc 10 stringop-overflow warnings' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'kvargs: fix invalid token parsing on FreeBSD' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'eal/ppc: fix build with gcc 9.3' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/bnxt: fix max ring count' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/i40e: fix flow director for ARP packets' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'doc: add i40e limitation for flow director' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/i40e: fix flush of flow director filter' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix assert in doorbell lookup' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'vhost: fix peer close check' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'vhost: prevent zero-copy with incompatible client mode' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix assert in dynamic metadata handling' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix actions validation on root table' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/sfc/base: use simpler EF10 family conditional check' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/sfc/base: use simpler EF10 family run-time checks' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/sfc/base: fix build when EVB is enabled' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/softnic: fix memory leak for thread' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/softnic: fix resource leak for pipeline' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/hns3: fix VLAN PVID when configuring device' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/hns3: fix return value when clearing statistics' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/octeontx: fix dangling pointer on init failure' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix RSS enablement' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix assert in modify converting' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix VLAN ID check' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'net/mlx5: fix gcc 10 enum-conversion warning' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'event/octeontx2: fix queue removal from Rx adapter' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'eventdev: fix probe and remove for secondary process' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'event/dsw: avoid reusing previously recorded events' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'common/octeontx: fix gcc 9.1 ABI break' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'mk: fix static linkage of mlx dependency' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'service: fix race condition for MT unsafe service' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'service: fix identification of service running on other lcore' " luca.boccassi
2020-05-19 13:04   ` [dpdk-stable] patch 'service: remove rte prefix from static functions' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'remove references to private PCI probe function' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'examples/l2fwd-keepalive: fix mbuf pool size' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'mem: fix overflow on allocation' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'examples/eventdev: fix crash on exit' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'mempool/octeontx2: fix build for gcc O1 optimization' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/ena: fix build for " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'event/octeontx2: " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'test/flow_classify: enable multi-sockets system' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'bbdev: fix doxygen comments' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'crypto/ccp: fix fd leak on probe failure' " luca.boccassi
2020-05-19 13:20     ` Kumar, Ravi1
2020-05-19 13:05   ` [dpdk-stable] patch 'app/crypto-perf: fix display of sample test vector' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'crypto/qat: fix cipher descriptor for ZUC and SNOW' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'crypto/kasumi: fix extern declaration' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'examples/fips_validation: fix parsing of algorithms' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'drivers/crypto: disable gcc 10 no-common errors' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'ipsec: check SAD lookup error' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/failsafe: fix fd leak' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'app/testpmd: fix statistics after reset' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/netvsc: fix comment spelling' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'bus/vmbus: " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/netvsc: do RSS across Rx queue only' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/netvsc: do not configure RSS if disabled' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/bnxt: fix possible stack smashing' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/iavf: fix link speed' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/ixgbe: fix link status synchronization on BSD' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/ice: support mark only action for flow director' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/ice: fix crash in switch filter' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/tap: fix crash in flow destroy' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/bnxt: fix number of TQM ring' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/bnxt: fix TQM ring context memory size' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/virtio: fix crash when device reconnecting' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/bnxt: fix FW version query' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'app/testpmd: fix memory failure handling for i40e DDP' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'bus/fslmc: fix dereferencing null pointer' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/dpaa2: fix 10G port negotiation' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/dpaa2: fix congestion ID for multiple traffic classes' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'bus/fslmc: fix size of qman fq descriptor' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/ixgbe: fix link state timing on fiber ports' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'Revert "net/bnxt: fix TQM ring context memory size"' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'Revert "net/bnxt: fix number of TQM ring"' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/ice: fix variable initialization' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/ring: fix device pointer on allocation' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/mlx5: fix match on empty VLAN item in DV mode' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/mlx5: fix matching for UDP tunnels with Verbs' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/mlx5: fix meter color register consideration' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/mlx4: fix drop queue error handling' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'net/mlx5: fix Tx queue release debug log timing' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'app: remove extra new line after link duplex' " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'examples: " luca.boccassi
2020-05-19 13:05   ` [dpdk-stable] patch 'crypto/qat: support plain SHA1..SHA512 hashes' " luca.boccassi
2020-05-22  9:39     ` [dpdk-stable] patch 'event/dsw: fix enqueue burst return value' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'app/eventdev: check Tx adapter service ID' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'crypto/caam_jr: fix check of file descriptors' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'crypto/caam_jr: fix IRQ functions return type' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'build: disable gcc 10 zero-length-bounds warning' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'doc: fix LTO config option' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'doc: fix default symbol binding in ABI guide' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'eal: fix C++17 compilation' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'doc: fix build issue in ABI guide' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/e1000: fix port hotplug for multi-process' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'doc: fix multicast filter feature announcement' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'common/mlx5: fix umem buffer alignment' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/ixgbe: fix statistics in flow control mode' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/qede: fix link state configuration' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/mlx5: fix VLAN flow action with wildcard VLAN item' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/vmxnet3: handle bad host framing' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/hinic: fix queues resource free' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/hinic: fix Tx mbuf length while copying' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'vhost: handle mbuf allocation failure' " luca.boccassi
2020-05-22  9:39       ` [dpdk-stable] patch 'net/virtio: fix unexpected event after reconnect' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/qede: fix port reconfiguration' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/bnxt: fix error log for command timeout' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/bnxt: fix using RSS config struct' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/bnxt: fix storing MAC address twice' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/i40e: fix queue region in RSS flow' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/mlx5: fix doorbell bitmap management offsets' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'common/mlx5: fix netlink buffer allocation from stack' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'app/testpmd: fix DCB set' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/ixgbe/base: update copyright' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/i40e/base: " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'common/iavf: " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/ice/base: " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'pci: accept 32-bit domain numbers' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'pci: reject negative values in PCI id' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'doc: fix typos in ABI policy' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'kvargs: fix strcmp helper documentation' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'mempool/dpaa2: install missing header with meson' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'fix same typo in multiple places' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'examples/kni: fix MTU change to setup Tx queue' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/i40e: fix wild pointer' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/ice: fix RSS for GTPU' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'net/i40e: fix queue related exception handling' " luca.boccassi
2020-05-22  9:40       ` [dpdk-stable] patch 'vhost: fix zero-copy server mode' " luca.boccassi
2020-05-27  9:24         ` [dpdk-stable] patch 'net/mvpp2: fix build with gcc 10' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'examples/vm_power: fix build with -fno-common' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'examples/vm_power: drop Unix path limit redefinition' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'doc: fix build with doxygen 1.8.18' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'cryptodev: fix SHA-1 digest enum comment' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/bnxt: fix Rx ring producer index' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/octeontx2: fix buffer size assignment' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/hinic: fix TSO' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/sfc/base: fix manual filter delete in EF10' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/i40e: fix setting L2TAG' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/iavf: " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/ice: " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/i40e: fix flow director enabling' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'net/ixgbe: check driver type in MACsec API' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'examples/kni: fix crash during MTU set' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'examples/ip_pipeline: remove check of null response' " luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'doc: fix typo in contributors guide' " luca.boccassi
2020-05-27  9:24           ` luca.boccassi
2020-05-27  9:24           ` [dpdk-stable] patch 'doc: prefer https when pointing to dpdk.org' " luca.boccassi

Reply instructions:

You may reply publically 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=20200519125804.104349-45-luca.boccassi@gmail.com \
    --to=luca.boccassi@gmail.com \
    --cc=cloud.wangxiaoyun@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

patches for DPDK stable branches

Archives are clonable:
	git clone --mirror http://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/ http://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable


Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


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