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