[ofa-general] [PATCH] CMA: Enable conn_id remove

Vladimir Sokolovsky vlad at dev.mellanox.co.il
Tue Dec 4 01:08:11 PST 2007


Hi Sean,
I have the following issue: The IB driver can't be unloaded after running applications over RDS.
I saw that the 'dev_remove' counter does not reach 0 value on the passive side (after connection establishment).

Please review the following patch:

CMA: Enable conn_id remove on the passive side after
connection establishment.

Signed-off-by: Vladimir Sokolovsky <vlad at mellanox.co.il>
---
diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c
index 0751697..656d6df 100644
--- a/drivers/infiniband/core/cma.c
+++ b/drivers/infiniband/core/cma.c
@@ -1122,8 +1122,10 @@ static int cma_req_handler(struct ib_cm_id *cm_id, struct ib_cm_event *ib_event)
         cm_id->cm_handler = cma_ib_handler;

         ret = conn_id->id.event_handler(&conn_id->id, &event);
-       if (!ret)
+       if (!ret) {
+               cma_enable_remove(conn_id);
                 goto out;
+       }

         /* Destroy the CM ID by returning a non-zero value. */
         conn_id->cm_id.ib = NULL;




More information about the general mailing list