1
1
The NS replica should give out tags that are over ORTE_RML_TAG_DYNAMIC
or it will overlap with other outstanding tags. This overlap was killing
MPI_Comm_spawn when a program tried to use it multiple times (> 3).

With this fix MPI_Comm_spawn is behaving properly.
A program can call it many times in a row with out problem.

NOTE: Not tested for multi-threaded build yet

(A long time debugging for a one liner... :/)

This commit was SVN r7529.
Этот коммит содержится в:
Josh Hursey 2005-09-28 03:20:43 +00:00
родитель b9b78f8f5d
Коммит 4cf4b4ea86

Просмотреть файл

@ -545,7 +545,7 @@ int orte_ns_replica_assign_rml_tag(orte_rml_tag_t *tag,
OPAL_THREAD_UNLOCK(&orte_ns_replica.mutex);
return rc;
}
tagitem->tag = orte_ns_replica.num_tags;
tagitem->tag = orte_ns_replica.num_tags + ORTE_RML_TAG_DYNAMIC;
(orte_ns_replica.num_tags)++;
if (NULL != name) { /* provided - can look it up later */
tagitem->name = strdup(name);