projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
53094c3
)
RDMA/nes: Check for sequence number wrap-around
author
Faisal Latif
<
[email protected]
>
Mon, 27 Apr 2009 20:38:31 +0000
(13:38 -0700)
committer
Roland Dreier
<
[email protected]
>
Mon, 27 Apr 2009 20:38:31 +0000
(13:38 -0700)
check_seq() was not checking if the seq#s have wrapped. Fix it.
Signed-off-by: Faisal Latif <
[email protected]
>
Signed-off-by: Roland Dreier <
[email protected]
>
drivers/infiniband/hw/nes/nes_cm.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/hw/nes/nes_cm.c
b/drivers/infiniband/hw/nes/nes_cm.c
index 1efe0beca0637a8210bb17c7bd60320331b6bfa9..1f7a659e6e9a3095232e1e2eedc370a4b28e9f95 100644
(file)
--- a/
drivers/infiniband/hw/nes/nes_cm.c
+++ b/
drivers/infiniband/hw/nes/nes_cm.c
@@
-56,6
+56,7
@@
#include <net/neighbour.h>
#include <net/route.h>
#include <net/ip_fib.h>
+#include <net/tcp.h>
#include "nes.h"
@@
-1514,7
+1515,7
@@
static int check_seq(struct nes_cm_node *cm_node, struct tcphdr *tcph,
rcv_wnd = cm_node->tcp_cntxt.rcv_wnd;
if (ack_seq != loc_seq_num)
err = 1;
- else if (
(seq + rcv_wnd) < rcv_nxt
)
+ else if (
!between(seq, rcv_nxt, (rcv_nxt+rcv_wnd))
)
err = 1;
if (err) {
nes_debug(NES_DBG_CM, "%s[%u] create abort for cm_node=%p "