From 568c9855ee5bdbe21fd7c41892d32087afaa13e3 Mon Sep 17 00:00:00 2001 From: Amir Vadai Date: Tue, 2 Dec 2008 13:34:09 +0200 Subject: [PATCH] sdp: BUG1429 - Sdp doesnt close resources When called from sdp_dreq_timeout() - not holding ref count for timewait exit - when IB is already teared down. Signed-off-by: Amir Vadai --- drivers/infiniband/ulp/sdp/sdp_main.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/infiniband/ulp/sdp/sdp_main.c b/drivers/infiniband/ulp/sdp/sdp_main.c index dd5463377b1c..e20a79c00df7 100644 --- a/drivers/infiniband/ulp/sdp/sdp_main.c +++ b/drivers/infiniband/ulp/sdp/sdp_main.c @@ -901,8 +901,12 @@ void sdp_dreq_wait_timeout_work(struct work_struct *work) release_sock(sk); - if (sdp_sk(sk)->id) + if (sdp_sk(sk)->id) { rdma_disconnect(sdp_sk(sk)->id); + } else { + sdp_warn(sk, "DO NOT SENDING DREQ - no need to wait for timewait exit\n"); + sock_put(sk, SOCK_REF_CM_TW); + } out: sock_put(sk, SOCK_REF_DREQ_TO); -- 2.50.1