]> git.baikalelectronics.ru Git - kernel.git/commit
tg3: fix ipv6 header length computation
authorEric Dumazet <eric.dumazet@gmail.com>
Mon, 23 Jan 2012 01:22:09 +0000 (01:22 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 23 Jan 2012 19:25:01 +0000 (14:25 -0500)
commitb7ab4659735c7b5a88d4b3e31b45ce26d59a4017
treeb8122ef05434f9543f331e6a03776bbbb3f1141d
parent84e76e5e89a0fe3275f67817b89c446dc45df517
tg3: fix ipv6 header length computation

tg3_start_xmit() makes the wrong assumption for TSOV6 that skb->head
doesnt include any payload data.

if (skb_is_gso_v6(skb))
hdr_len = skb_headlen(skb) - ETH_HLEN;

This is not true anymore after commit 6fd84d5d45 (tcp: avoid frag
allocation for small frames)

We should instead use : skb_transport_offset(skb) + tcp_hdrlen(skb)

Its also true for IPv4

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Matt Carlson <mcarlson@broadcom.com>
CC: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/tg3.c