------------------------------------------------------------
revno: 88
revision-id: [EMAIL PROTECTED]
parent: [EMAIL PROTECTED]
committer: Peter Somogyi <[EMAIL PROTECTED]>
branch nick: ctdb
timestamp: Fri 2007-04-27 17:12:20 +0200
message:
ctdb/ib: disconnect error handling rearrangement
modified:
ib/ibwrapper.c ibwrapper.c-20061204130028-0125b4f5a72f4b11
=== modified file 'ib/ibwrapper.c'
--- a/ib/ibwrapper.c 2007-04-26 14:54:24 +0000
+++ b/ib/ibwrapper.c 2007-04-27 15:12:20 +0000
@@ -534,13 +534,14 @@
case RDMA_CM_EVENT_DISCONNECTED:
DEBUG(11, ("RDMA_CM_EVENT_DISCONNECTED\n"));
- if ((rc=rdma_ack_cm_event(event)))
- DEBUG(0, ("disc/rdma_ack_cm_event failed with %d\n",
rc));
- event = NULL; /* don't ack more */
-
if (cma_id!=pctx->cm_id) {
- DEBUG(0, ("client DISCONNECT event cm_id=%p\n",
cma_id));
+ DEBUG(1, ("client DISCONNECT event cm_id=%p\n",
cma_id));
conn = talloc_get_type(cma_id->context, struct
ibw_conn);
+
+ if ((rc=rdma_ack_cm_event(event)))
+ DEBUG(0, ("disc/rdma_ack_cm_event failed with
%d\n", rc));
+ event = NULL; /* don't ack it any more */
+
conn->state = IBWC_DISCONNECTED;
pctx->connstate_func(NULL, conn);
}