Revert "ar71xx: Add GRO support to ag71xx"

This reverts commit 13e5e47369.
This commit causes a severe regression in LAN->WAN routing performance
for several devices. This appears to be caused by the extra requirement
to validate the SKB checksum early in the rx path, which the ethernet
hardware does not do

Signed-off-by: Felix Fietkau <nbd@nbd.name>
master
Felix Fietkau 7 years ago
parent 5fff2f44d5
commit 3db529d5cc
  1. 6
      target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c

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

Loading…
Cancel
Save