[openib-general] What context can CM be called from?

Sean Hefty mshefty at ichips.intel.com
Thu Mar 31 09:41:59 PST 2005


Hal Rosenstock wrote:
> Is this just the kmalloc in cm_alloc_msg or is there more to this ?

I _think_ that the kmalloc in cm_alloc_msg is all that needs to change.

> One other comment/question about cm_alloc_msg:
> 
> It seems possible that this is called prior to cm_id_priv->av.port being
> initialized. Should an error be returned for this case ?

Can you reference the place in the code where you think that this could 
happen?  The port should be set before a REQ is sent or immediately 
after one is received.

> A follow on to this:
> Doing so appears to cause the connection to go into timewait. Is that
> correct for these cases ? Not sure what else can be done (perhaps error
> ?)

I tried to follow the connection states defined by the spec.  There 
were a couple cases where the spec didn't define a transition, so in 
those cases I simply made my best judgment on whether to transition to 
timewait or back to idle.  I can't recall the specific transitions that 
were missing at the moment, but there were probably 3-4 of them.

In some cases, an error left the cm_id in its current state, which lets 
the user retry the operation or abort (e.g. reject the connection).

- Sean



More information about the general mailing list