JDK-8320525 : G1: G1UpdateRemSetTrackingBeforeRebuild::distribute_marked_bytes accesses partially unloaded klass
  • Type: Bug
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 22
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2023-11-21
  • Updated: 2024-04-23
  • Resolved: 2023-11-28
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 22
22 b26Fixed
Related Reports
Blocks :  
Description
For debug purposes G1UpdateRemSetTrackingBeforeRebuild::distribute_marked_bytes() accesses the size of the humongous object it is currently processing.

In case of marked_bytes == 0, the object is actually dead, and the code should not access the klass any more.

This currently does not matter because we purge the metaspace for unloaded classes after this code, but still this is ugly.

Makes code that moves the purging before G1UpdateRemSetTrackingBeforeRebuild crash on some platforms (linux-x86).




Comments
Fix request [21u] I backport this as prereq of JDK-8317809. Low risk, modifies an assertion. Clean backport. SAP nig SAP nightly testing passed.htly testing passed.
23-04-2024

A pull request was submitted for review. URL: https://git.openjdk.org/jdk21u-dev/pull/517 Date: 2024-04-22 07:36:39 +0000
22-04-2024

Changeset: 21d361e9 Author: Thomas Schatzl <tschatzl@openjdk.org> Date: 2023-11-28 20:55:27 +0000 URL: https://git.openjdk.org/jdk/commit/21d361e944a599e82e5ed93aa81ad485b4601843
28-11-2023

A pull request was submitted for review. URL: https://git.openjdk.org/jdk/pull/16766 Date: 2023-11-21 16:01:39 +0000
21-11-2023