Don't leave the cid registered in any case.
This commit was SVN r27735.
Этот коммит содержится в:
родитель
1de078c888
Коммит
a1754dfe31
@ -915,8 +915,7 @@ int ompi_comm_dup ( ompi_communicator_t * comm, ompi_communicator_t **newcomm )
|
|||||||
NULL, /* remote_procs */
|
NULL, /* remote_procs */
|
||||||
comp->c_keyhash, /* attrs */
|
comp->c_keyhash, /* attrs */
|
||||||
comp->error_handler, /* error handler */
|
comp->error_handler, /* error handler */
|
||||||
(mca_base_component_t *) comp->c_topo_component,
|
(mca_base_component_t *) comp->c_topo_component, /* topo component */
|
||||||
/* topo component */
|
|
||||||
comp->c_local_group, /* local group */
|
comp->c_local_group, /* local group */
|
||||||
comp ->c_remote_group ); /* remote group */
|
comp ->c_remote_group ); /* remote group */
|
||||||
if ( NULL == newcomp ) {
|
if ( NULL == newcomp ) {
|
||||||
|
@ -237,6 +237,9 @@ int ompi_comm_nextcid ( ompi_communicator_t* newcomm,
|
|||||||
ret = (allredfnct)(&nextlocal_cid, &nextcid, 1, MPI_MAX, comm, bridgecomm,
|
ret = (allredfnct)(&nextlocal_cid, &nextcid, 1, MPI_MAX, comm, bridgecomm,
|
||||||
local_leader, remote_leader, send_first );
|
local_leader, remote_leader, send_first );
|
||||||
if( OMPI_SUCCESS != ret ) {
|
if( OMPI_SUCCESS != ret ) {
|
||||||
|
OPAL_THREAD_LOCK(&ompi_cid_lock);
|
||||||
|
ompi_comm_unregister_cid (comm->c_contextid);
|
||||||
|
OPAL_THREAD_UNLOCK(&ompi_cid_lock);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
if (nextcid == nextlocal_cid) {
|
if (nextcid == nextlocal_cid) {
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user