Fix a problem found by Tim Prins (patch also supplied by Tim P). From
his e-mail: I ran into a small bug in rmaps_rr.c: map_app_by_slot which was triggered by using multiple app contexts. Basically, if not all the slots we allocated on a node were used by an app, we would automatically move onto the next node. This caused a problem with multiple app contexts when the first app takes a partial allocation of a node, the second app would not be able to access these slots because we had already move past the node, and the byslot routine does not wrap back around the list. This commit was SVN r6766.
Этот коммит содержится в:
родитель
54e3865c62
Коммит
f8fa8f4935
@ -261,11 +261,12 @@ static int map_app_by_slot(
|
||||
if (node->node_slots_alloc == 0) {
|
||||
opal_list_remove_item(nodes, (opal_list_item_t*)node);
|
||||
OBJ_RELEASE(node);
|
||||
|
||||
/* Move on to the next node since we have allocated all of
|
||||
this node's slots */
|
||||
|
||||
cur_node_item = next;
|
||||
}
|
||||
|
||||
/* Move on to the next node */
|
||||
|
||||
cur_node_item = next;
|
||||
}
|
||||
|
||||
/* Did we allocate everything? */
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user