[ofw] [RFC] [2/2] ib cm: export CM only interface

Fab Tillier ftillier at windows.microsoft.com
Tue Nov 18 06:59:54 PST 2008


>>> -               p_cep->pfn_cb = pfn_cb;
>>> +               p_cep->pfn_cb = pfn_cb ? pfn_cb : p_cep->pfn_cb;
>>
>> This makes it impossible for a client to clear the callback of a CEP
>> created in response to a REQ received on a callback-driven listening
>> CEP.  I think if you want to leave the value unchanged you should
>> have a special value reserved - NULL is a valid callback pointer for
>> the
> CEP.
>
> The change here is to combine two nearly identical blocks of code into
> one (al_cep_pre_rep and al_cep_pre_rep_ex).  I needed a third block
> and al_cep_pre_rep_ex_ex just seemed ridiculous.  al_cep_pre_rep() is
> only called from al_cm_qp.c, which doesn't modify the callback.

The IBAL CM code always uses the same callback, so you should be able to eliminate the al_cep_pre_rep call usage altogether.

What is this third call usage you need?  I don't see what you're doing now that you couldn't do before with one of the two calls - al_cep_pre_rep leaves the callback the way it was, al_cep_pre_rep_ex lets you change it (to any value, including NULL).

-Fab



More information about the ofw mailing list