staging: gdm724x: fix use after free in gdm_lte_rx()
[linux-2.6-microblaze.git] / drivers / staging / gdm724x / gdm_lte.c
index 493ed48..0d8d8fe 100644 (file)
@@ -76,14 +76,15 @@ static void tx_complete(void *arg)
 
 static int gdm_lte_rx(struct sk_buff *skb, struct nic *nic, int nic_type)
 {
-       int ret;
+       int ret, len;
 
+       len = skb->len + ETH_HLEN;
        ret = netif_rx_ni(skb);
        if (ret == NET_RX_DROP) {
                nic->stats.rx_dropped++;
        } else {
                nic->stats.rx_packets++;
-               nic->stats.rx_bytes += skb->len + ETH_HLEN;
+               nic->stats.rx_bytes += len;
        }
 
        return 0;