RFR: 8319797: Recursive lightweight locking: Runtime implementation [v6]

Axel Boldt-Christmas aboldtch at openjdk.org
Thu Nov 23 07:51:42 UTC 2023


On Tue, 21 Nov 2023 22:04:39 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:

>> Axel Boldt-Christmas has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains six commits:
>> 
>>  - Merge remote-tracking branch 'upstream_jdk/pr/16603' into JDK-8319797
>>  - Merge remote-tracking branch 'upstream_jdk/pr/16603' into JDK-8319797
>>  - Merge remote-tracking branch 'upstream_jdk/pr/16603' into JDK-8319797
>>  - Fix nit
>>  - Fix comment typos
>>  - 8319797: Recursive lightweight locking: Runtime implementation
>
> src/hotspot/share/runtime/lockStack.inline.hpp line 127:
> 
>> 125:   int end = to_index(_top);
>> 126:   if (end <= 1 || _base[end - 1] != o ||  _base[end - 2] != o) {
>> 127:     // The two topmost oop does not match o.
> 
> nit typo: s/The two topmost oop does not match o./The two topmost oops do not match o.

Done.

> src/hotspot/share/runtime/synchronizer.cpp line 504:
> 
>> 502:           // Retry until a lock state change has been observed.  cas_set_mark() may collide with non lock bits modifications.
>> 503:           // Try to swing into 'fast-locked' state.
>> 504:           assert(!lock_stack.contains(obj()), "thread must not already hold the lock");
> 
> It looks like the indent from L502 -> L515 is too much by two spaces.
> This could be a GitHub view glitch...

Done. (Occurred when merging).

> test/hotspot/gtest/runtime/test_lockStack.cpp line 36:
> 
>> 34:     ls._base[ls.to_index(ls._top)] = obj;
>> 35:     ls._top += oopSize;
>> 36: 
> 
> nit - please delete extra blank line.

Done.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16606#discussion_r1403005792
PR Review Comment: https://git.openjdk.org/jdk/pull/16606#discussion_r1403004885
PR Review Comment: https://git.openjdk.org/jdk/pull/16606#discussion_r1403004988


More information about the hotspot-dev mailing list