JDK-8332327 : Return _methods_jmethod_ids field back in VMStructs
  • Type: Bug
  • Component: hotspot
  • Sub-Component: svc
  • Affected Version: 23
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2024-05-15
  • Updated: 2024-05-23
  • Resolved: 2024-05-17
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 23
23 b24Fixed
Related Reports
Relates :  
Description
The fix for JDK-8313332 has removed InstanceKlass::_methods_jmethod_ids field from VMStructs:
https://github.com/openjdk/jdk/commit/21867c929a2f2c961148f2cd1e79d672ac278d27#diff-7d448441e80a0b784429d5d8aee343fcb131c224b8ec7bc70ea636f78d561ecd

This broke async-profiler, since the profiler needs this field to obtain jmethodID in some corner cases.

There was no actual need for removal, as the field is still there in InstanceKlass. So, I propose to return the field back to restore the broken functionality of async-profiler. This is a no risk change, because it only exports an offset of one field and does not affect the JVM otherwise.
Comments
Changeset: d84a8fd8 Author: Andrei Pangin <apangin@openjdk.org> Committer: Aleksey Shipilev <shade@openjdk.org> Date: 2024-05-17 09:40:39 +0000 URL: https://git.openjdk.org/jdk/commit/d84a8fd8762fe9448e73d75ec9dc8c4876b1a709
17-05-2024

A pull request was submitted for review. URL: https://git.openjdk.org/jdk/pull/19254 Date: 2024-05-15 21:12:03 +0000
15-05-2024