From: Intel Date: Wed, 4 Dec 2013 09:00:00 +0000 (+0100) Subject: ixgbe: residual fix about resetting big Tx queues X-Git-Tag: spdx-start~11058 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=5a6d9897f91f6bb4b2dad8b789aecda1376dd00f;p=dpdk.git ixgbe: residual fix about resetting big Tx queues Index overflow when resetting big queues was partially fixed in bcf457f8c0d64a5c (ixgbe: fix index overflow when resetting big Tx queues) and better fixed in e8ae856140bce4e4 (igb/ixgbe: fix index overflow when resetting big queues) But this version (1.5.2r0) has residues of the initial fix from 1.5.1r0. Signed-off-by: Intel --- diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c index 6f8291893d..d0c8cbbbff 100644 --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c @@ -1813,9 +1813,9 @@ ixgbe_reset_tx_queue(struct igb_tx_queue *txq) volatile union ixgbe_adv_tx_desc *txd = &txq->tx_ring[i]; txd->wb.status = IXGBE_TXD_STAT_DD; txe[i].mbuf = NULL; - txe[i].last_id = i; - txe[prev].next_id = i; - prev = i; + txe[i].last_id = (uint16_t)i; + txe[prev].next_id = (uint16_t)i; + prev = (uint16_t)i; } txq->tx_next_dd = (uint16_t)(txq->tx_rs_thresh - 1);