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. _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
