[ofa-general] iWARP cm_id's

James Lentini jlentini at netapp.com
Fri Mar 7 06:57:38 PST 2008



On Fri, 7 Mar 2008, Charles Taylor wrote:

> 
> 
> The provider layer listen() call is passed a cm_id and a backlog.  
> The accept() call is passed a cm_id, and a conn_param.  I'm 
> wondering if there is (or should be) any relationship between the 
> cm_id associated with the creation of the listen service and the 
> cm_ids passed in for subsequent accept() calls resulting from 
> connection requests to the CM listener.
> 
> Thanks,
> 
> Charlie Taylor
> UF HPC Center

I'm not sure if your are using the userspace or kernel API. In either 
case, you create an rdma_cm_id for listening. When you receive an 
RDMA_CM_EVENT_CONNECT_REQUEST event, the RDMA CM passes in a new 
rdma_cm_id for accepting or rejecting the connection. The kernel and 
userspace APIs differ in how the RDMA_CM_EVENT_CONNECT_REQUEST event 
is delivered to the application.

For an example of how to use the kernel programming API, take a look 
at the NFS/RDMA server in 2.6.25. There are some examples of how to 
use the userspace API in the Sean's librdmacm git tree:

 http://www.openfabrics.org/git/?p=~shefty/librdmacm.git;a=tree



More information about the general mailing list