gianfar:don't add FCB length to hard_header_len
authorWu Jiajun-B06378 <B06378@freescale.com>
Mon, 21 May 2012 23:00:48 +0000 (23:00 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 22 May 2012 19:18:43 +0000 (15:18 -0400)
FCB(Frame Control Block) isn't the part of netdev hard header.
Add FCB to hard_header_len will make GRO fail at MAC comparision stage.

Signed-off-by: Jiajun Wu <b06378@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/gianfar.c

index 1adb0245b9dd80ba5d485bc51c6048f51dabb79b..0741aded9eb057bbc2454a220bd6a19318e975fa 100644 (file)
@@ -1082,7 +1082,7 @@ static int gfar_probe(struct platform_device *ofdev)
 
        if (dev->features & NETIF_F_IP_CSUM ||
                        priv->device_flags & FSL_GIANFAR_DEV_HAS_TIMER)
-               dev->hard_header_len += GMAC_FCB_LEN;
+               dev->needed_headroom = GMAC_FCB_LEN;
 
        /* Program the isrg regs only if number of grps > 1 */
        if (priv->num_grps > 1) {