Skip to content

Commit

Permalink
Fix continuation stackslot scanning issue in Concurrent Scavenger
Browse files Browse the repository at this point in the history
Concurrent Scavenger use SCAN_REASON_SHOULDREMEMBER scanning for
rememberedSet prune phase, fix continuation stackslot scanning issue
for rememberedSet prune phase to avoid the remembered flag has been
overwritten to reset.

we should break the stack walking after seeing this first time the flag
being set to true, but it's not in our control since the iteration loop
is in the stack walker. the related enhancement could be done in future
release.

Signed-off-by: Lin Hu <linhu@ca.ibm.com>
  • Loading branch information
LinHu2016 committed Jan 19, 2023
1 parent ce5f39f commit ca33513
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion runtime/gc_glue_java/ScavengerDelegate.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ MM_ScavengerDelegate::doStackSlot(MM_EnvironmentStandard *env, omrobjectptr_t *s
}
break;
case SCAN_REASON_SHOULDREMEMBER:
*shouldRemember = scavenger->shouldRememberSlot(slotPtr);
*shouldRemember |= scavenger->shouldRememberSlot(slotPtr);
break;
}
}
Expand Down

0 comments on commit ca33513

Please sign in to comment.