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,
next prev parent reply other threads:[~2020-05-19 12:59 UTC|newest] 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 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=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 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