JDK-8344363 : FullGCForwarding::initialize_flags is called after ObjLayout::initialize
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2024-11-17
  • Updated: 2024-11-28
  • Resolved: 2024-11-25
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 24
24 b26Fixed
Related Reports
Relates :  
Description
ObjLayout::initialize() is called in Arguments::parse(const JavaVMInitArgs*) which sets ObjLayout::_klass_mode. FullGCForwarding::initialize_flags(size_t) is called in init_globals() which seems to be later in the Threads::create_vm(JavaVMInitArgs*, bool*) routine. The latter, however, can unset the UseCompactObjectHeaders flag, which leads to a potential mismatch with ObjLayout::_klass_mode, firing the asserts in ObjLayout::klass_mode().
Comments
Changeset: cb1c7366 Branch: master Author: Roman Kennke <rkennke@openjdk.org> Date: 2024-11-25 13:48:02 +0000 URL: https://git.openjdk.org/jdk/commit/cb1c73663e91e632d643c23e6c5acc1c5118ac8b
25-11-2024

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/22255 Date: 2024-11-19 20:07:38 +0000
20-11-2024