d7e7e3acb7
Fix case where the btl_tcp_links MCA parameter is used to create multiple TCP connections between peers. Three issues were resulting in hangs during large message transfer: * The 2nd..btl_tcp_link connections were dropped during establishment because the per-process address check was binary, rather than a count * The accept handler would not skip a btl module that was already in use, resulting in all connections for a given address being vectored to a single btl * Multiple addresses in the same subnet caused connections to be stalled, as the receiver would always use the same (first) address found. Binding the outgoing connection solves this issue * Lastly fix race condition created by connections being started at the exact same time by accpeting connections not in the closed state, allowing endpoint_accept to resolve dispute Signed-off-by: Jordan Cherry <cherryj@amazon.com> |
||
---|---|---|
.. | ||
btl_tcp_addr.h | ||
btl_tcp_component.c | ||
btl_tcp_endpoint.c | ||
btl_tcp_endpoint.h | ||
btl_tcp_frag.c | ||
btl_tcp_frag.h | ||
btl_tcp_ft.c | ||
btl_tcp_ft.h | ||
btl_tcp_hdr.h | ||
btl_tcp_proc.c | ||
btl_tcp_proc.h | ||
btl_tcp.c | ||
btl_tcp.h | ||
configure.m4 | ||
help-mpi-btl-tcp.txt | ||
Makefile.am | ||
owner.txt |