summaryrefslogtreecommitdiff
path: root/drivers/net/mlx5/mlx5_rxtx.c
diff options
context:
space:
mode:
authorXueming Li <xuemingl@mellanox.com>2018-08-24 07:10:33 +0800
committerFerruh Yigit <ferruh.yigit@intel.com>2018-09-10 13:59:03 +0200
commit3afdf157fcedba15167ad03b187746bd6c73811f (patch)
tree20a5a1d45cb0736199fdcca6a0c4b44982dff56c /drivers/net/mlx5/mlx5_rxtx.c
parent8fd55a07941a3297208b7820fc8e544431fc5150 (diff)
downloaddpdk-3afdf157fcedba15167ad03b187746bd6c73811f.zip
dpdk-3afdf157fcedba15167ad03b187746bd6c73811f.tar.gz
dpdk-3afdf157fcedba15167ad03b187746bd6c73811f.tar.xz
net/mlx5: fix interrupt completion queue index wrapping
Rxq cq_ci was 16 bits while hardware is expecting to wrap around 24 bits, this caused interrupt failure after burst of packets. Fixes: 43e9d9794cde ("net/mlx5: support upstream rdma-core") Cc: stable@dpdk.org Signed-off-by: Xueming Li <xuemingl@mellanox.com> Acked-by: Yongseok Koh <yskoh@mellanox.com>
Diffstat (limited to 'drivers/net/mlx5/mlx5_rxtx.c')
-rw-r--r--drivers/net/mlx5/mlx5_rxtx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c
index 2d14f8a..558e6b6 100644
--- a/drivers/net/mlx5/mlx5_rxtx.c
+++ b/drivers/net/mlx5/mlx5_rxtx.c
@@ -2097,7 +2097,7 @@ mlx5_rx_burst_mprq(void *dpdk_rxq, struct rte_mbuf **pkts, uint16_t pkts_n)
const unsigned int wq_mask = (1 << rxq->elts_n) - 1;
volatile struct mlx5_cqe *cqe = &(*rxq->cqes)[rxq->cq_ci & cq_mask];
unsigned int i = 0;
- uint16_t rq_ci = rxq->rq_ci;
+ uint32_t rq_ci = rxq->rq_ci;
uint16_t consumed_strd = rxq->consumed_strd;
struct mlx5_mprq_buf *buf = (*rxq->mprq_bufs)[rq_ci & wq_mask];