RFR: 8368599: ShenandoahConcurrentMark could use ThreadsClaimTokenScope [v2]

Francesco Andreuzzi fandreuzzi at openjdk.org
Fri Sep 26 08:17:19 UTC 2025


On Thu, 25 Sep 2025 14:37:06 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

>> Hold on a second.
>> 
>> 
>> class StrongRootsScope : public MarkScope {
>> 
>> 
>> ...and:
>> 
>> 
>> MarkScope::MarkScope() {
>>   nmethod::oops_do_marking_prologue();
>> }
>> 
>> MarkScope::~MarkScope() {
>>   nmethod::oops_do_marking_epilogue();
>> }
>> 
>> 
>> So, what calls `nmethod::oops_do_marking_prologue`/`epilogue`, and do we know it is (not) needed?
>
>> So, what calls nmethod::oops_do_marking_prologue/epilogue, and do we know it is (not) needed?
> 
> `nmethod::oops_do_marking_prologue/epilogue` is meant to undo the effect of `oops_do_try_claim` in `MarkingNMethodClosure`. Since Shenandoah conc marking doesn't use `MarkingNMethodClosure`, it's not needed. (STW full-gc marking, `ShenandoahSTWMark`, uses `MarkingNMethodClosure` though.)

Thanks for the review @albertnetymk and @earthling-amzn.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/27477#issuecomment-3337288304


More information about the hotspot-gc-dev mailing list