Date: Tue, 29 Mar 2016 01:41:07 +0000 (UTC) From: Navdeep Parhar <np@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r297369 - head/sys/contrib/rdma/krping Message-ID: <201603290141.u2T1f7ie001665@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
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;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201603290141.u2T1f7ie001665>