wil6210: let IP stack re-check HW TCP/UDP csum errors
authorVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Tue, 13 Aug 2013 12:25:32 +0000 (15:25 +0300)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 15 Aug 2013 20:07:59 +0000 (16:07 -0400)
commit4a68ab100f24eca34c5d79b937df4dbd0cbc0b4a
tree4f5288e7b5864f0d6160cd8af8b065d4f528046c
parent563299d82fb2492e8d2390b94b00b668feebb229
wil6210: let IP stack re-check HW TCP/UDP csum errors

Fix for TCP iperf from Windows to Linux stall after about 1sec

Hardware reports false errors in some situations:

Microsoft IP stack, in violation of RFC 1624, set TCP checksum that should be 0x0
as 0xffff. hardware report Rx csum error. If HW csum absolutely trusted,
this frame can be never received, as re-transmitted one will have same csum problem.
In addition, it mess up block ack reorder buffer, as if packet dropped, it is not score boarded
there.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/wil6210/txrx.c