bad508687e
There's no longer any need for the usnic BTL to have its own progress thread: it can use the opal_progress_thread() infrastructure. This commit removes the code to startup/shutdown the usnic-BTL-specific progress thread and instead, just adds its events to the OPAL-wide progress thread. This necessitated a small change in the finalization step. Previously, we would stop the progress thread and then tear down the events. We can no longer stop the progress thread, and if we start tearing down events, this will cause shutdown/hangups to be sent across sockets, potentially firing some of the still-remaining events while some (but not all) of the data structures have been torn down. Chaos ensues. Instead, queue up an event to tear down all the pending events. Since the progress thread will only fire one event at a time, having a teardown event means that it can tear down all the pending events "atomically" and not have to worry that one of those events will get fired in the middle of the teardown process. |
||
---|---|---|
.. | ||
allocator | ||
backtrace | ||
base | ||
btl | ||
common | ||
compress | ||
crs | ||
dl | ||
dstore | ||
event | ||
hwloc | ||
if | ||
installdirs | ||
memchecker | ||
memcpy | ||
memory | ||
mpool | ||
pmix | ||
pstat | ||
rcache | ||
reachable | ||
sec | ||
shmem | ||
timer | ||
Makefile.am | ||
mca.h |