[ofa-general] RDMA/iwarp CM question
Steve Wise
swise at opengridcomputing.com
Wed Sep 12 03:51:16 PDT 2007
Kanoj Sarcar wrote:
> Hello iwarp/rdmacm folks,
>
> If an iwarp driver sends a IW_CM_EVENT_CONNECT_REQUEST
> type event to the OFA stack, what synchronization (if
> any) is provided by OFA against a service destruct
> downcall to the driver that will attempt to destroy
> the listener for which this upcall was made?
>
>
No synchronization is provided. The only thing I see is that a connect
request will be dropped if the listening cm_id is being destroyed. So
the iwarp cm protects its own data structures for this case. See iwcm.c
cm_conn_req_handler() and destoy_cm_id(). But from the driver's
perspective, one thread/cpu could be running a connect request event and
be in the iwcm's event handler, while another thread/cpu is running a
destroy on the listen cm_id and is in the drivers destroy_listen handler.
> Will some layer in OFA ensure that accept/reject(s) on
> children of a listener will not go down to the iwarp
> provider if the service_destroy on the listener has
> already been invoked?
>
>
I don't think so. Once the connect request is passed up to the user, any
association with the listening cm_id is gone. And I believe it should
be valid that an application can get a connect request, then destroy
the listen cm_id, then accept or reject the connect request.
Steve.
More information about the general
mailing list