JDK-8331714 : Make OopMapCache installation lock-free
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 11,17,21,22,23
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2024-05-06
  • Updated: 2025-01-08
  • Resolved: 2024-05-07
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 21 JDK 22 JDK 23
21.0.5Fixed 22.0.2Fixed 23 b22Fixed
Related Reports
Blocks :  
Blocks :  
Description
Trying to solve JDK-8331572 runs into all sorts of lock ranking issues with `OopMapCacheAlloc_lock`. I think it would be a bit saner to rewrite the double-checked locking installation to atomic lock-free. 
Comments
A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/19100 Date: 2024-05-06 10:02:40 +0000
08-01-2025

[jdk21u-fix-request] Approval Request from Aleksey Shipilëv Clean backport to improve internal locking. Also makes future backports clean by avoiding lock ranking problems. The patch was in mainline for 3 weeks without bugtail. The change is simple, and thus the risk is on the lower side.
28-05-2024

[jdk22u-fix-request] Approval Request from Aleksey Shipilëv Clean backport to improve internal locking. Also makes future backports clean by avoiding lock ranking problems. The patch was in mainline for 3 weeks without bugtail. The change is simple, and thus the risk is on the lower side.
28-05-2024

A pull request was submitted for review. URL: https://git.openjdk.org/jdk21u-dev/pull/608 Date: 2024-05-28 08:54:54 +0000
28-05-2024

A pull request was submitted for review. URL: https://git.openjdk.org/jdk22u/pull/225 Date: 2024-05-28 08:42:21 +0000
28-05-2024

Changeset: a2584a83 Author: Aleksey Shipilev <shade@openjdk.org> Date: 2024-05-07 08:30:26 +0000 URL: https://git.openjdk.org/jdk/commit/a2584a8341b2dc9c102abd373a890b2108d3f57e
07-05-2024