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: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7957a9dea8
commit
e42a43a5ca
|
@ -3340,9 +3340,9 @@ static void lan78xx_tx_bh(struct lan78xx_net *dev)
|
|||
count = 0;
|
||||
length = 0;
|
||||
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 (pkt_cnt) {
|
||||
if (!skb_queue_is_first(tqp, skb)) {
|
||||
/* handle previous packets first */
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue