Details
-
Bug
-
Resolution: Fixed
-
P3
-
20, 21
-
b19
-
generic
Description
JVMCI provides the ability to reflectively read any field in a Java object. During JIT compilation this is only used to read final fields but native image uses it for heap introspection. In that case it's possible to use it to read Reference.referent but the JVMCI code is using obj_field_acquire which doesn't perform any of the GC barrier work. Native image is always run with -XX:+UseParallelGC for performance but when running with G1 this code can read a weak reference that is going to be released.
Attachments
Issue Links
- duplicates
-
JDK-8306904 [JVMCI] assertion in JVMCIRuntime::release_cleared_oop_handles
- Closed