|
@@ -1089,7 +1089,7 @@ next:
|
|
|
|
|
|
while ((skb = __skb_dequeue(&queue)) != NULL) {
|
|
|
skb->protocol = eth_type_trans(skb, dev);
|
|
|
- netif_receive_skb(skb);
|
|
|
+ napi_gro_receive(&ag->napi, skb);
|
|
|
}
|
|
|
|
|
|
DBG("%s: rx finish, curr=%u, dirty=%u, done=%d\n",
|
|
@@ -1141,7 +1141,7 @@ static int ag71xx_poll(struct napi_struct *napi, int limit)
|
|
|
DBG("%s: disable polling mode, rx=%d, tx=%d,limit=%d\n",
|
|
|
dev->name, rx_done, tx_done, limit);
|
|
|
|
|
|
- napi_complete(napi);
|
|
|
+ napi_complete_done(napi, rx_done);
|
|
|
|
|
|
/* enable interrupts */
|
|
|
spin_lock_irqsave(&ag->lock, flags);
|
|
@@ -1160,7 +1160,7 @@ oom:
|
|
|
pr_info("%s: out of memory\n", dev->name);
|
|
|
|
|
|
mod_timer(&ag->oom_timer, jiffies + AG71XX_OOM_REFILL);
|
|
|
- napi_complete(napi);
|
|
|
+ napi_complete_done(napi, rx_done);
|
|
|
return 0;
|
|
|
}
|
|
|
|