Michael Chan 52c0fd834e [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>
2006-06-30 14:11:57 -07:00
..
2006-02-13 15:53:41 -08:00
2006-03-25 08:22:52 -08:00
2006-06-26 18:35:02 +02:00
2006-03-21 16:00:53 -05:00
2006-06-26 18:35:02 +02:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-23 02:06:41 -07:00
2005-04-16 15:20:36 -07:00
2006-06-23 02:06:41 -07:00
2006-06-23 02:06:41 -07:00
2005-04-16 15:20:36 -07:00
2006-06-20 01:21:29 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-25 08:22:52 -08:00
2006-03-25 08:22:52 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-22 23:16:13 -04:00
2006-06-22 23:16:13 -04:00
2005-10-31 13:37:12 +11:00
2005-04-16 15:20:36 -07:00
2006-06-17 21:30:47 -07:00
2006-06-29 16:58:24 -07:00
2006-06-29 16:58:24 -07:00
2006-03-20 22:34:09 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-23 02:06:41 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-05-15 11:20:58 -07:00
2006-06-26 22:01:53 -04:00
2005-05-15 18:31:07 -04:00
2005-04-16 15:20:36 -07:00
2006-06-23 02:06:41 -07:00
2005-04-16 15:20:36 -07:00
2006-04-02 13:52:48 +02:00
2005-04-16 15:20:36 -07:00
2006-04-20 17:55:06 -04:00
2006-04-20 17:55:06 -04:00
2006-04-20 17:55:06 -04:00
2005-04-16 15:20:36 -07:00
2006-03-25 08:22:52 -08:00
2006-03-03 21:33:57 -05:00
2006-06-23 02:06:41 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-17 21:30:14 -07:00
2006-06-23 02:06:41 -07:00
2005-04-16 15:20:36 -07:00
2006-03-25 08:22:52 -08:00
2006-03-25 08:22:52 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-25 08:22:52 -08:00
2005-04-16 15:20:36 -07:00
2005-09-14 08:46:21 -04:00
2006-06-17 21:30:16 -07:00
2005-04-16 15:20:36 -07:00
2006-06-26 22:48:38 -04:00
2006-04-02 13:52:48 +02:00
2006-03-25 08:22:52 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-25 08:22:52 -08:00
2005-04-16 15:20:36 -07:00
2006-04-02 13:52:48 +02:00
2006-03-03 21:33:57 -05:00
2006-06-23 02:07:29 -07:00
2005-09-14 09:18:21 -04:00
2005-04-16 15:20:36 -07:00
2006-05-02 15:16:36 -04:00
2006-06-23 02:07:29 -07:00
2006-05-02 15:16:36 -04:00
2005-11-11 08:31:35 -05:00
2006-03-03 21:33:57 -05:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-05-20 00:03:38 -04:00
2005-04-16 15:20:36 -07:00
2006-01-10 08:01:59 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-23 02:06:41 -07:00
2006-05-08 16:01:11 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-15 23:02:00 +02:00
2006-03-20 22:34:25 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-30 14:11:57 -07:00
2006-06-30 14:11:57 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-06-23 02:06:41 -07:00