summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2015-01-02 21:53:18 +0000
committerFelix Fietkau <nbd@openwrt.org>2015-01-02 21:53:18 +0000
commit51b1f0ca5cb7b7a98151a9f3818fe0fe2fae4903 (patch)
tree51bdb072cab3c185de1644a78a1cae6df3209e9e
parentbaa3a38ac635908ff17c7f55677be03cc6709495 (diff)
downloadmtk-20170518-51b1f0ca5cb7b7a98151a9f3818fe0fe2fae4903.zip
mtk-20170518-51b1f0ca5cb7b7a98151a9f3818fe0fe2fae4903.tar.gz
mtk-20170518-51b1f0ca5cb7b7a98151a9f3818fe0fe2fae4903.tar.bz2
ramips: use netif_receive_skb instead of napi_gro_receive when rx csum offload is unavailable
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 43810
-rw-r--r--target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c b/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c
index 6e9f617..068366a 100644
--- a/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c
+++ b/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c
@@ -764,7 +764,10 @@ static int fe_poll_rx(struct napi_struct *napi, int budget,
stats->rx_packets++;
stats->rx_bytes += pktlen;
- napi_gro_receive(napi, skb);
+ if (skb->ip_summed == CHECKSUM_NONE)
+ netif_receive_skb(skb);
+ else
+ napi_gro_receive(napi, skb);
priv->rx_data[idx] = new_data;
rxd->rxd1 = (unsigned int) dma_addr;