1
1

ompi/group: fix sparse group proc reference counting

This commit fixes a bug when sparse groups are in use. Since sparse
group do not actually increment the reference counts of any procs
(they just retain the parent group) it is wrong to decrement the
reference counts of all procs in the group using
ompi_group_decrement_proc_count(). This commit makes the call to
ompi_group_decrement_proc_count() conditional on the group being
dense.

Fixes open-mpi/ompi#1593

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
Этот коммит содержится в:
Nathan Hjelm 2016-04-27 15:30:47 -06:00
родитель 01c90d4e71
Коммит 1783d94f91

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

@ -275,7 +275,11 @@ static void ompi_group_destruct(ompi_group_t *group)
the proc counts are not increased during the constructor,
either). */
ompi_group_decrement_proc_count (group);
#if OMPI_GROUP_SPARSE
if (OMPI_GROUP_IS_DENSE(group))
/* sparse groups do not increment proc reference counters */
#endif
ompi_group_decrement_proc_count (group);
/* release thegrp_proc_pointers memory */
if (NULL != group->grp_proc_pointers) {