[GIT]: Networking

David Miller
2008-09-22T12:21:33Z

Just one regression fix here.

When we are doing multiqueue TX, we accidently try to fetch the
protocol inside of IP fragments when computing the hash.

This completely kills performance since what we use for the ports is
essentially random garbage, and as a result this causes lots of packet
reordering and other nasties.

For drivers that have TX multiqueue support, this creates a serious
performance regression against 2.6.26

I know of at least one piece of hardware which has this same bug in
it's silicon for doing RX multiqueue hashing :-)

Noticed and fixed by Alexander Duyck.

Please pull, thanks a lot!

The following changes since commit e7272403d2f9be3dbb7cc185fcc390e781b1af6b:
Rafael J. Wysocki (1):
e100: Use pci_pme_active to clear PME_Status and disable PME#

are available in the git repository at:

master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git master

Alexander Duyck (1):
netdev: simple_tx_hash shouldn't hash inside fragments

net/core/dev.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)