[openib-general] [PATCH] RDMA / IB CM: support immediately sending replies to received messages

Or Gerlitz ogerlitz at voltaire.com
Mon Aug 7 03:52:27 PDT 2006


Sean Hefty wrote:
> This is what the patch would look like that would support sending
> replies immediately after polling a receive before the QP has
> "finished" connecting.  The changes require that the ib_cm support
> returning QP attributes for the RTS transition after a REQ has
> been received, and add an rdma_establish() call to the RDMA CM.

Sean,

OK, just to make sure i don't miss anything here:

1) the CM moves the QP state to RTS before sending the REP and hence per 
the QP its fine to do TX before getting the ESTABLISHED event.

2) if a ULP calls rdma_establish (eg when polling an RX from CQ --> QP 
--> un ESTABLISHED CMA ID or from the COMM_EST case of the qp async 
event handler) it is ensured they will get ESTABLISHED event so its up 
to them if to wait for the event before processing the RX or not.

> I'd like to decide on which approach to use by the end of next
> week, so I can commit any changes and update userspace accordingly.

OK, fair enough. Personally i preferred the patch set that implemented 
everything within the ib stack and just had this little requirement on 
the ULP to hold on with doing TX before getting the ESTABLISHED event, 
but this one makes sense as well.

I will try to see if i can think of races that are bad enough to prevent 
us from moving the QP state to RTS *before* sending the REP.

Also, i understand that for APM support a patch in the spirit of what 
you were suggesting (ie track local QPNs and affiliated QP async events 
in the CM) would be merged anyway, correct?

Or.





More information about the general mailing list