RFR: 8316417: ObjectMonitorIterator does not return the most recent monitor and is incorrect if no monitors exists
Axel Boldt-Christmas
aboldtch at openjdk.org
Mon Sep 18 10:01:05 UTC 2023
ObjectMonitorIterator fails to return the most resent monitor added. It start with returning the `nextOM()` ObjectMonitor from the `_head` ObjectMonitor but fails to ever return the `_head` ObjectMonitor.
The current implementation can also not handle that the `_head` is nullptr (no monitors in the system) and returns a null ObjectMonitorIterator. Which is interpreted as `monitor list not supported, too old hotspot VM`.
Changed the iterator to keep return the current monitor (starts with `_head`) and decoupled `_head == nullptr` from the question if ObjectMonitorIterator is supported.
Testing:
* Passes all `serviceability/sa` tests
* Currently running tier 1-3
* Currently running GHA
-------------
Commit messages:
- 8316417: ObjectMonitorIterator does not return the most recent monitor and is incorrect if no monitors exists
Changes: https://git.openjdk.org/jdk/pull/15782/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15782&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8316417
Stats: 25 lines in 3 files changed: 10 ins; 1 del; 14 mod
Patch: https://git.openjdk.org/jdk/pull/15782.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15782/head:pull/15782
PR: https://git.openjdk.org/jdk/pull/15782
More information about the serviceability-dev
mailing list