[TG3]: Add TSO workaround using GSO
authorMichael Chan <mchan@broadcom.com>
Fri, 30 Jun 2006 03:15:54 +0000 (20:15 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Fri, 30 Jun 2006 21:11:57 +0000 (14:11 -0700)
commit52c0fd834ea0e7c6ef8616ce0a1f85bac4233ed7
tree92897bedf97906699f654fd94985fbada0497daa
parent1661394e78b3b2cc868cd0e89c1066974302aaca
[TG3]: Add TSO workaround using GSO

Use GSO to workaround a rare TSO bug on some chips.  This hardware
bug may be triggered when the TSO header size is greater than 80
bytes.  When this condition is detected in a TSO packet, the driver
will use GSO to segment the packet to workaround the hardware bug.

Thanks to Juergen Kreileder <jk@blackdown.de> for reporting the
problem and collecting traces to help debug the problem.

And thanks to Herbert Xu <herbert@gondor.apana.org.au> for providing
the GSO mechanism that happens to be the perfect workaround for this
problem.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/tg3.c
drivers/net/tg3.h