summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw
diff options
context:
space:
mode:
authorFaisal Latif <faisal.latif@intel.com>2009-12-10 00:54:03 +0100
committerRoland Dreier <rolandd@cisco.com>2009-12-10 00:54:03 +0100
commit69524e1aff75e4ed8efcb7d699c97d55c317a950 (patch)
tree609b8af91effceb8882f7fb8ffd777376281af3d /drivers/infiniband/hw
parentRDMA/nes: MPA request/response error checking (diff)
downloadlinux-69524e1aff75e4ed8efcb7d699c97d55c317a950.tar.xz
linux-69524e1aff75e4ed8efcb7d699c97d55c317a950.zip
RDMA/nes: Resource not freed for REJECTed connections
During testing of REJECT connection error handling, we saw that the cm_id resources are not released. When the retransmit timer expires, we need to send a reset message to remote node before issuing the ABORTED event. Signed-off-by: Faisal Latif <faisal.latif@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/hw')
-rw-r--r--drivers/infiniband/hw/nes/nes_cm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c
index ae0946342a9c..08fcd25f788c 100644
--- a/drivers/infiniband/hw/nes/nes_cm.c
+++ b/drivers/infiniband/hw/nes/nes_cm.c
@@ -513,6 +513,8 @@ static void nes_retrans_expired(struct nes_cm_node *cm_node)
send_reset(cm_node, NULL);
break;
default:
+ add_ref_cm_node(cm_node);
+ send_reset(cm_node, NULL);
create_event(cm_node, NES_CM_EVENT_ABORTED);
}
}