Commit e42a43a5 authored by David S. Miller's avatar David S. Miller

lan78xx: Do not access skb_queue_head list pointers directly.

Use skb_queue_walk() instead.

Adjust inner loop test to utilize and skb_queue_is_first().
Unfortunately we have to keep pkt_cnt around because it is
used by a latter loop in this function.
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 7957a9de
...@@ -3340,9 +3340,9 @@ static void lan78xx_tx_bh(struct lan78xx_net *dev) ...@@ -3340,9 +3340,9 @@ static void lan78xx_tx_bh(struct lan78xx_net *dev)
count = 0; count = 0;
length = 0; length = 0;
spin_lock_irqsave(&tqp->lock, flags); spin_lock_irqsave(&tqp->lock, flags);
for (skb = tqp->next; pkt_cnt < tqp->qlen; skb = skb->next) { skb_queue_walk(tqp, skb) {
if (skb_is_gso(skb)) { if (skb_is_gso(skb)) {
if (pkt_cnt) { if (!skb_queue_is_first(tqp, skb)) {
/* handle previous packets first */ /* handle previous packets first */
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment