Integrated: 8290234: [JVMCI] use JVMCIKlassHandle to protect raw Klass* values from concurrent G1 scanning
Doug Simon
dnsimon at openjdk.org
Wed Jul 13 19:18:21 UTC 2022
On Wed, 13 Jul 2022 12:24:50 GMT, Doug Simon <dnsimon at openjdk.org> wrote:
> JVMCI Java code must never read a raw `Klass*` value from memory (using `Unsafe`) that is not already known to be wrapped in a `HotSpotResolvedObjectTypeImpl` without going through a VM call. The VM call is necessary so that the `Klass*` is handlized in a `JVMCIKlassHandle` to protect it from the concurrent scanning done by G1. This PR re-introduces the VM calls that were mistakenly optimized away in [JDK-8289094](https://bugs.openjdk.org/browse/JDK-8289094).
This pull request has now been integrated.
Changeset: 74ac5df9
Author: Doug Simon <dnsimon at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/74ac5df96fb4344f005180f8643cb0c9223b1556
Stats: 21 lines in 3 files changed: 8 ins; 5 del; 8 mod
8290234: [JVMCI] use JVMCIKlassHandle to protect raw Klass* values from concurrent G1 scanning
Reviewed-by: kvn, never
-------------
PR: https://git.openjdk.org/jdk/pull/9480
More information about the hotspot-compiler-dev
mailing list