diff --git a/ompi/mca/osc/rdma/osc_rdma.c b/ompi/mca/osc/rdma/osc_rdma.c index eab73f7ea8..0c159af524 100644 --- a/ompi/mca/osc/rdma/osc_rdma.c +++ b/ompi/mca/osc/rdma/osc_rdma.c @@ -24,6 +24,7 @@ #include "ompi/win/win.h" #include "ompi/communicator/communicator.h" #include "ompi/mca/btl/btl.h" +#include "ompi/mca/osc/base/base.h" #include "mpi.h" @@ -38,6 +39,9 @@ ompi_osc_rdma_module_free(ompi_win_t *win) opal_progress(); } + opal_output_verbose(50, ompi_osc_base_output, + "Finalizing window %d", module->p2p_comm->c_contextid); + /* finish with a barrier */ if (ompi_group_size(win->w_group) > 1) { ret = module->p2p_comm->c_coll.coll_barrier(module->p2p_comm); diff --git a/ompi/mca/osc/rdma/osc_rdma_component.c b/ompi/mca/osc/rdma/osc_rdma_component.c index 70daa9c572..bc77d22127 100644 --- a/ompi/mca/osc/rdma/osc_rdma_component.c +++ b/ompi/mca/osc/rdma/osc_rdma_component.c @@ -419,13 +419,12 @@ ompi_osc_rdma_component_select(ompi_win_t *win, NULL); } + /* need to make create a collective, or lock requests can come in + before the window is fully created... */ + module->p2p_comm->c_coll.coll_barrier(module->p2p_comm); - if (module->p2p_eager_send) { - /* need to barrier if eager sending or we can receive before the - other side has been fully setup, causing much gnashing of - teeth. */ - module->p2p_comm->c_coll.coll_barrier(module->p2p_comm); - } + opal_output_verbose(50, ompi_osc_base_output, + "created window %d", module->p2p_comm->c_contextid); return ret; }