On Wed, 13 Nov 2024 23:21:24 GMT, William Kemper <wkem...@openjdk.org> wrote:
>> src/hotspot/share/gc/shenandoah/shenandoahVMOperations.cpp line 83: >> >>> 81: void VM_ShenandoahInitMark::doit() { >>> 82: ShenandoahGCPauseMark mark(_gc_id, "Init Mark", >>> SvcGCMarker::CONCURRENT); >>> 83: set_active_generation(); >> >> Why is it here, and not down in `entry_*` methods, probably in helper >> classes? > > I think it's here for the same reason `propagate_gc_state_to_java_threads` is > here. Having it here makes it easier to see that this critical > synchronization step happens for every safepoint. I'm inclined to leave as is, not wanting to disrupt stability of code that is known to be working. But if there is strong preference otherwise, we can make a change... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21273#discussion_r1845149976