RFR: 8367982: Unify ObjectSynchronizer and LightweightSynchronizer [v2]

Fredrik Bredberg fbredberg at openjdk.org
Wed Nov 5 14:39:22 UTC 2025


On Fri, 31 Oct 2025 13:52:53 GMT, Fredrik Bredberg <fbredberg at openjdk.org> wrote:

>> src/hotspot/share/runtime/synchronizer.cpp line 287:
>> 
>>> 285:   _last_async_deflation_time_ns = os::javaTimeNanos();
>>> 286: 
>>> 287:   ObjectSynchronizer::create_om_table();
>> 
>> The original code should effectively be inlined here:
>> 
>> if (UseObjectMonitorTable) {
>>   ObjectMonitorTable::create();
>> }
>
> Tried to do a quick fix for this, but `ObjectMonitorTable` is not known at this point, and forward declaring it turned out to be a mess. So, since we agreed to move out `ObjectMonitorTable` to a separate file, I think this can be postponed until that file has been created.

Created: [JDK-8371347](https://bugs.openjdk.org/browse/JDK-8371347) "Move the ObjectMonitorTable to a separate new file"

>> src/hotspot/share/runtime/synchronizer.cpp line 1838:
>> 
>>> 1836:   if (!UseObjectMonitorTable) {
>>> 1837:     return;
>>> 1838:   }
>> 
>> This should move to the caller and be replaced with an assertion at this level. Though you don't need to introduce this method at all as the caller can call `OMT::create` directly.
>
> Same as last answer, this is easily done once we have moved `ObjectMonitorTable` to a separate file, but not until then.

Created: [JDK-8371347](https://bugs.openjdk.org/browse/JDK-8371347) "Move the ObjectMonitorTable to a separate new file"

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27915#discussion_r2494806413
PR Review Comment: https://git.openjdk.org/jdk/pull/27915#discussion_r2494808134


More information about the hotspot-dev mailing list