[openib-general] Re: CMA stuff

Caitlin Bestler caitlinb at broadcom.com
Thu Mar 2 14:42:08 PST 2006


Sean Hefty wrote:
> Caitlin Bestler wrote:
>> The only sensible meaning for "backlog" is that it is a credit given
>> by the application to the CMA. It is permission to make N callbacks
>> with connection requests. Each callback decrements the credit.
>> Each accept/reject restores a credit. This is totally analogous to
>> having a single credit for how many in-flight requests a server
>> allows a client to send, without any knowledge of how the client is
>> structured internally or how that limit impacts the clients
>> decisions. 
> 
> This was the definition of backlog that I tried to push down into the
> IB CM. And while it sounds simple, it resulted in a complex
> implementation because of destruction issues.  I don't
> remember all of the problems now, but it was along the lines
> of having the listen destroyed before or simultaneously with
> an associated connect request being
> accepted/rejected/destroyed.  The same problems occur
> implementing backlog in the CMA.
> 
> For kernel clients that make use of a connection queue,
> backlog can be easily managed.  Clients simply reject
> requests that they are not ready to handle.
> 
> - Sean

True, but when the connection request gets relayed to user
mode then it is imperative that a full queue result in a
reflex rejection.

Who does that rejection (CMA or user-mode proxy) is a
more flexible issue.






More information about the general mailing list