[IBAL] Only create CEPs for REQs that matched to a listen.
authorleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 24 Mar 2009 14:33:44 +0000 (14:33 +0000)
committerleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 24 Mar 2009 14:33:44 +0000 (14:33 +0000)
commit107bf447c29656a319601a03a6d95a8f0462bd00
treedc19374a646003c2368015eec10f2cdd483fa3c0
parentc3c8dff604faa37d5a481ab43f74754ed68789bd
[IBAL] Only create CEPs for REQs that matched to a listen.

Currently, the CM creates a CEP for an incoming REQ before matching to either a listen or a Peer-to-Peer connection request.  As Peer-to-Peer is not supported, this means that CEPs are created before matching the incoming REQ to a listen.  In the case where there is no listen, this will result in CEPs being created, and then queued for destruction to the timewait timer callback.  Because the CEPs have a timewait time of zero, the timer callback runs as fast as REQs are received, severely affecting system responsiveness.

This patch moves the CEP creation after matching against listens, avoiding creation altogether if there is no listening endpoint.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@2042 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
core/al/kernel/al_cm_cep.c