diff options
author | Surjit Reang <surjit.reang@neterion.com> | 2008-02-03 07:27:38 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-02-03 07:27:38 -0500 |
commit | c88559539bd16eae4e9056d4734b3fe8a9858c45 (patch) | |
tree | a90ea2bc129d9e4d944f49fd669ab36c98a9f15d /drivers/net/s2io.h | |
parent | 03157ac31eb4a8883382a212b161d2e6c5059fbf (diff) |
S2io: Fix for LRO Bugs
Resubmitting patch from Al Viro <viro@zeniv.linux.org.uk>, with subject -
[PATCH] s2io LRO bugs.
a) initiate_new_session() sets ->tcp_ack to ntohl(...); everything
else stores and expects to find there the net-endian value.
b) check for monotonic timestamps in verify_l3_l4_lro_capable()
compares the value sitting in TCP option (right there in the skb->data,
net-endian 32bit) with the value picked from earlier packet.
Doing that without ntohl() is an interesting idea and it might even
work occasionally; unfortunately, it's quite broken.
Signed-off-by: Surjit Reang <surjit.reang@neterion.com>
Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/s2io.h')
-rw-r--r-- | drivers/net/s2io.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/s2io.h b/drivers/net/s2io.h index 9f6016c6f135..64b88eb48287 100644 --- a/drivers/net/s2io.h +++ b/drivers/net/s2io.h | |||
@@ -809,7 +809,7 @@ struct lro { | |||
809 | int in_use; | 809 | int in_use; |
810 | __be16 window; | 810 | __be16 window; |
811 | u32 cur_tsval; | 811 | u32 cur_tsval; |
812 | u32 cur_tsecr; | 812 | __be32 cur_tsecr; |
813 | u8 saw_ts; | 813 | u8 saw_ts; |
814 | }; | 814 | }; |
815 | 815 | ||