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.
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to