Attached fix has been submitted to netdev.
Ayaz
Eric Dumazet wrote:
Le mardi 13 avril 2010 à 14:43 -0700, David Miller a écrit :
Do you really come to the conclusion that TSO is broken with the above
test results?
I would conclude that there is a TX checksumming issue, since merely
turning TSO off does not fix the problem whereas turning TX
checksumming off does.
Indeed, we clarified the point and it is a TX checksum issue.
--- old/drivers/net/forcedeth.c 2010-04-14 01:18:51.000000000 -0400
+++ new/drivers/net/forcedeth.c 2010-04-14 01:20:40.000000000 -0400
@@ -5901,7 +5901,7 @@
/* Limit the number of tx's outstanding for hw bug */
if (id->driver_data & DEV_NEED_TX_LIMIT) {
np->tx_limit = 1;
- if ((id->driver_data & DEV_NEED_TX_LIMIT2) &&
+ if (((id->driver_data & DEV_NEED_TX_LIMIT2) ==
DEV_NEED_TX_LIMIT2) &&
pci_dev->revision >= 0xA2)
np->tx_limit = 0;
}