[openib-general] Re: [PATCH 3/3] iWARP CM

Steve Wise swise at opengridcomputing.com
Thu Mar 16 13:13:16 PST 2006


> It's confusing trying to figure out who's responsible for QP transitions.  In 
> some places, the iw_cm performs the transitions.  In others, the provider is 
> expected to have performed them.  Is there a way to make this consistent, so 
> that all QP transitions are initiated from the same location?  It seems that 
> we're open to bugs if different modules drive the QP state without strict 
> coordination between them.
> 


In RDMAC verbs, the consumer -and- the provider move the QP states based
on what happens.  In tom's code, the IWCM is acting on behalf of the
consumer. 

EG:

The verbs say to begin an orderly "normal" close, then two consumers
agree to shut down (somehow) and quiesce their SQs.  Then one side
transitions the QP to CLOSING, which initiates the TCP FIN.  The
provider on the other end of the tcp connection receives the FIN and if
the local QP is quiesced, the provider transitions its QP to CLOSING and
sends the FIN/ACK. 

Note that the consumer on one side transitioned from RTS -> CLOSING, and
on the other side the provider transitioned from RTS -> CLOSING.

There are other examples of this in the RDMAC verbs doc.  Trying to
support this doc is what is driving the IWCM state transitions vs the
provider transitions.






More information about the general mailing list