net: ravb: Fix RX byte accounting for jumbo packets
[sfrench/cifs-2.6.git] / drivers / net / ethernet / renesas / ravb_main.c
index 6969cdeeb67ab22cb832f49f8b74932d05ea44c0..fcb756d77681cbaf2a17d3e21ddffa5543bc9a84 100644 (file)
@@ -769,7 +769,7 @@ static bool ravb_rx_gbeth(struct net_device *ndev, int *quota, int q)
        dma_addr_t dma_addr;
        int rx_packets = 0;
        u8  desc_status;
-       u16 pkt_len;
+       u16 desc_len;
        u8  die_dt;
        int entry;
        int limit;
@@ -787,10 +787,10 @@ static bool ravb_rx_gbeth(struct net_device *ndev, int *quota, int q)
                /* Descriptor type must be checked before all other reads */
                dma_rmb();
                desc_status = desc->msc;
-               pkt_len = le16_to_cpu(desc->ds_cc) & RX_DS;
+               desc_len = le16_to_cpu(desc->ds_cc) & RX_DS;
 
                /* We use 0-byte descriptors to mark the DMA mapping errors */
-               if (!pkt_len)
+               if (!desc_len)
                        continue;
 
                if (desc_status & MSC_MC)
@@ -811,25 +811,25 @@ static bool ravb_rx_gbeth(struct net_device *ndev, int *quota, int q)
                        switch (die_dt) {
                        case DT_FSINGLE:
                                skb = ravb_get_skb_gbeth(ndev, entry, desc);
-                               skb_put(skb, pkt_len);
+                               skb_put(skb, desc_len);
                                skb->protocol = eth_type_trans(skb, ndev);
                                if (ndev->features & NETIF_F_RXCSUM)
                                        ravb_rx_csum_gbeth(skb);
                                napi_gro_receive(&priv->napi[q], skb);
                                rx_packets++;
-                               stats->rx_bytes += pkt_len;
+                               stats->rx_bytes += desc_len;
                                break;
                        case DT_FSTART:
                                priv->rx_1st_skb = ravb_get_skb_gbeth(ndev, entry, desc);
-                               skb_put(priv->rx_1st_skb, pkt_len);
+                               skb_put(priv->rx_1st_skb, desc_len);
                                break;
                        case DT_FMID:
                                skb = ravb_get_skb_gbeth(ndev, entry, desc);
                                skb_copy_to_linear_data_offset(priv->rx_1st_skb,
                                                               priv->rx_1st_skb->len,
                                                               skb->data,
-                                                              pkt_len);
-                               skb_put(priv->rx_1st_skb, pkt_len);
+                                                              desc_len);
+                               skb_put(priv->rx_1st_skb, desc_len);
                                dev_kfree_skb(skb);
                                break;
                        case DT_FEND:
@@ -837,17 +837,17 @@ static bool ravb_rx_gbeth(struct net_device *ndev, int *quota, int q)
                                skb_copy_to_linear_data_offset(priv->rx_1st_skb,
                                                               priv->rx_1st_skb->len,
                                                               skb->data,
-                                                              pkt_len);
-                               skb_put(priv->rx_1st_skb, pkt_len);
+                                                              desc_len);
+                               skb_put(priv->rx_1st_skb, desc_len);
                                dev_kfree_skb(skb);
                                priv->rx_1st_skb->protocol =
                                        eth_type_trans(priv->rx_1st_skb, ndev);
                                if (ndev->features & NETIF_F_RXCSUM)
                                        ravb_rx_csum_gbeth(priv->rx_1st_skb);
+                               stats->rx_bytes += priv->rx_1st_skb->len;
                                napi_gro_receive(&priv->napi[q],
                                                 priv->rx_1st_skb);
                                rx_packets++;
-                               stats->rx_bytes += pkt_len;
                                break;
                        }
                }