mirror of
https://github.com/adulau/aha.git
synced 2025-01-01 13:46:24 +00:00
myri10ge: Remove nonsensical limit in the tx done routine
Remove nonsensical limit in the tx done routine. Specifically, the loop will always terminate after processing <= 1 rings worth of frames, as the mcp index is not refetched, so the removed conditional could never be true. Signed-off-by: Brice Goglin <brice@myri.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
be5ae97319
commit
c97884b5de
1 changed files with 0 additions and 6 deletions
|
@ -1060,7 +1060,6 @@ static inline void myri10ge_tx_done(struct myri10ge_priv *mgp, int mcp_index)
|
||||||
struct myri10ge_tx_buf *tx = &mgp->tx;
|
struct myri10ge_tx_buf *tx = &mgp->tx;
|
||||||
struct sk_buff *skb;
|
struct sk_buff *skb;
|
||||||
int idx, len;
|
int idx, len;
|
||||||
int limit = 0;
|
|
||||||
|
|
||||||
while (tx->pkt_done != mcp_index) {
|
while (tx->pkt_done != mcp_index) {
|
||||||
idx = tx->done & tx->mask;
|
idx = tx->done & tx->mask;
|
||||||
|
@ -1091,11 +1090,6 @@ static inline void myri10ge_tx_done(struct myri10ge_priv *mgp, int mcp_index)
|
||||||
bus), len,
|
bus), len,
|
||||||
PCI_DMA_TODEVICE);
|
PCI_DMA_TODEVICE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* limit potential for livelock by only handling
|
|
||||||
* 2 full tx rings per call */
|
|
||||||
if (unlikely(++limit > 2 * tx->mask))
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
/* start the queue if we've stopped it */
|
/* start the queue if we've stopped it */
|
||||||
if (netif_queue_stopped(mgp->dev)
|
if (netif_queue_stopped(mgp->dev)
|
||||||
|
|
Loading…
Reference in a new issue