diff options
-rw-r--r-- | drivers/net/arm/at91_ether.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/arm/at91_ether.c b/drivers/net/arm/at91_ether.c index f33d957adc7a..fada15d959de 100644 --- a/drivers/net/arm/at91_ether.c +++ b/drivers/net/arm/at91_ether.c | |||
@@ -853,14 +853,13 @@ static void at91ether_rx(struct net_device *dev) | |||
853 | while (dlist->descriptors[lp->rxBuffIndex].addr & EMAC_DESC_DONE) { | 853 | while (dlist->descriptors[lp->rxBuffIndex].addr & EMAC_DESC_DONE) { |
854 | p_recv = dlist->recv_buf[lp->rxBuffIndex]; | 854 | p_recv = dlist->recv_buf[lp->rxBuffIndex]; |
855 | pktlen = dlist->descriptors[lp->rxBuffIndex].size & 0x7ff; /* Length of frame including FCS */ | 855 | pktlen = dlist->descriptors[lp->rxBuffIndex].size & 0x7ff; /* Length of frame including FCS */ |
856 | skb = alloc_skb(pktlen + 2, GFP_ATOMIC); | 856 | skb = dev_alloc_skb(pktlen + 2); |
857 | if (skb != NULL) { | 857 | if (skb != NULL) { |
858 | skb_reserve(skb, 2); | 858 | skb_reserve(skb, 2); |
859 | memcpy(skb_put(skb, pktlen), p_recv, pktlen); | 859 | memcpy(skb_put(skb, pktlen), p_recv, pktlen); |
860 | 860 | ||
861 | skb->dev = dev; | 861 | skb->dev = dev; |
862 | skb->protocol = eth_type_trans(skb, dev); | 862 | skb->protocol = eth_type_trans(skb, dev); |
863 | skb->len = pktlen; | ||
864 | dev->last_rx = jiffies; | 863 | dev->last_rx = jiffies; |
865 | lp->stats.rx_bytes += pktlen; | 864 | lp->stats.rx_bytes += pktlen; |
866 | netif_rx(skb); | 865 | netif_rx(skb); |