svn commit: r297369 - head/sys/contrib/rdma/krping
Navdeep Parhar
np at FreeBSD.org
Tue Mar 29 01:41:08 UTC 2016
Author: np
Date: Tue Mar 29 01:41:07 2016
New Revision: 297369
URL: https://svnweb.freebsd.org/changeset/base/297369
Log:
krping wasn't designed to take more than one client. Fail any connect
requests if cb->state is not IDLE.
Submitted by: Krishnamraju Eraparaju @ Chelsio
Reviewed by: Steve Wise @ Open Grid Computing
Sponsored by: Chelsio Communications
Modified:
head/sys/contrib/rdma/krping/krping.c
Modified: head/sys/contrib/rdma/krping/krping.c
==============================================================================
--- head/sys/contrib/rdma/krping/krping.c Tue Mar 29 00:10:47 2016 (r297368)
+++ head/sys/contrib/rdma/krping/krping.c Tue Mar 29 01:41:07 2016 (r297369)
@@ -266,8 +266,13 @@ static int krping_cma_event_handler(stru
break;
case RDMA_CM_EVENT_CONNECT_REQUEST:
- cb->state = CONNECT_REQUEST;
- cb->child_cm_id = cma_id;
+ if (cb->state == IDLE) {
+ cb->state = CONNECT_REQUEST;
+ cb->child_cm_id = cma_id;
+ } else {
+ PRINTF(cb, "Received connection request in wrong state"
+ " (%d)\n", cb->state);
+ }
DEBUG_LOG(cb, "child cma %p\n", cb->child_cm_id);
wake_up_interruptible(&cb->sem);
break;
More information about the svn-src-head
mailing list