[15] RFR(S): 8239477: jdk/jfr/jcmd/TestJcmdStartStopDefault.java fails -XX:+VerifyOops with "verify_oop: rsi: broken oop"
Tobias Hartmann
tobias.hartmann at oracle.com
Thu May 28 14:22:02 UTC 2020
Hi,
please review the following patch:
https://bugs.openjdk.java.net/browse/JDK-8239477
http://cr.openjdk.java.net/~thartmann/8239477/webrev.00/
When loading JfrThreadLocal::_java_event_writer which is a jobject (i.e., metadata that does not
life in the Java heap), type T_OBJECT is used in the C1 intrinsic for _getEventWriter. As a result,
we fail during oop verification emitted by LIR_Assembler::mem2reg.
We should use T_METADATA instead but can't due to JDK-8026837 [1]. Similar to [2], I'm therefore
using T_ADDRESS as a workaround until JDK-8026837 is fixed.
Thanks,
Tobias
[1] # Internal Error (/oracle/jdk_jdk/open/src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp:1353),
pid=8575, tid=8591
# Error: ShouldNotReachHere()
[2] http://hg.openjdk.java.net/jdk/jdk/file/02a5a446f8bf/src/hotspot/share/c1/c1_LIRGenerator.cpp#l1287
More information about the hotspot-compiler-dev
mailing list