RFR: 8316417: ObjectMonitorIterator does not return the most recent monitor and is incorrect if no monitors exists [v4]

Axel Boldt-Christmas aboldtch at openjdk.org
Tue Sep 19 07:34:22 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

Axel Boldt-Christmas has updated the pull request incrementally with four additional commits since the last revision:

 - Always return a ObjectMonitorIterator
 - Fix CDS tests
 - Revert "Avoid changing the LingeredApp class hierarchy for CDS tests ergonomics"
   
   This reverts commit 9376d8fee715d1049b5c5f8e52605f3f4d083601.
 - Revert "Copyright changes too"
   
   This reverts commit 973646ed3868bdbc601075f50f9193b7e2deafbe.

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/15782/files
  - new: https://git.openjdk.org/jdk/pull/15782/files/973646ed..48a6ba80

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=15782&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=15782&range=02-03

  Stats: 20 lines in 6 files changed: 2 ins; 11 del; 7 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