net: mediatek: dropped rx packets are not being counted properly
authorJohn Crispin <john@phrozen.org>
Fri, 10 Jun 2016 11:28:01 +0000 (13:28 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 11 Jun 2016 06:29:29 +0000 (23:29 -0700)
There are two places inside mtk_poll_rx where rx_dropped is not being
incremented properly. Fix this by adding the missing code to increment
the counter.

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mediatek/mtk_eth_soc.c

index 8c3e5438794819308eef40f3d64a55c2729fc767..b6d3c217722d22385219b202e55021f48cb1ea18 100644 (file)
@@ -829,6 +829,7 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
                                          DMA_FROM_DEVICE);
                if (unlikely(dma_mapping_error(&netdev->dev, dma_addr))) {
                        skb_free_frag(new_data);
+                       netdev->stats.rx_dropped++;
                        goto release_desc;
                }
 
@@ -836,6 +837,7 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
                skb = build_skb(data, ring->frag_size);
                if (unlikely(!skb)) {
                        put_page(virt_to_head_page(new_data));
+                       netdev->stats.rx_dropped++;
                        goto release_desc;
                }
                skb_reserve(skb, NET_SKB_PAD + NET_IP_ALIGN);