[openib-general] design for communication established affiliated asynchronous event handling
Or Gerlitz
ogerlitz at voltaire.com
Mon Jul 3 03:34:54 PDT 2006
Sean Hefty wrote:
> Rimmer, Todd wrote:
>> The CM would open the CA, provide its async event callback routine and
>> perform a special register_cm() verbs call. Of course most CM traffic
>> would occur on the GSI QP, so this open CA instance was only for this
>> purpose. This special verb was only available in kernel space (avoiding
>> security issue of application stealing CM interface and because our CM
>> was in the kernel anyway).
>
> Thanks for the info. I'm considering this sort of approach.
OK, so you opt for a change that will have the whole solution running
within the ibstack core (hw driver / core / cm) - the CM gets an async
event which make it synthesize an RTU and act on it.
So we went down from CMA level handling to CM level handling and it
would work for both user and kernel consumers, this is in the price of
having to change the verbs access layer for the CM to register on QP
async events.
Again, also with this solution the ULP has to be aware for CQ
completions related to a QP on which ESTABLISHED event was not yet
delivered on the associated CMA ID.
Sound good, in fact our gen1 stack was using this solution as well,
relying on the VAPI driver feature of delivering affiliated async events
to all the kernel consumers (the async event ***handler*** was not
associated with a specific QP)
Or.
More information about the general
mailing list