RFR(M): 8239024: Kitchensink24HStress.java failed due to timeout
Markus Gronlund
markus.gronlund at oracle.com
Wed Jun 10 17:11:56 UTC 2020
Greetings,
Please review this fix to resolve a deadlock involving the JfrStream_lock.
Bug: https://bugs.openjdk.java.net/browse/JDK-8239024
Webrev: http://cr.openjdk.java.net/~mgronlun/8239024/webrev00/
Testing: jdk_jfr
This webrev is a diff against https://mail.openjdk.java.net/pipermail/hotspot-jfr-dev/2020-June/001513.html
Please see the full problem description in the bug.
Short comment:
The JfrRotationLock is only used by a single thread (the JFR Recorder Thread) during normal operations. Its only purpose is to provide a mutex for a potential JFR Emergency dump thread corrupting in-flight serializations as part of crash dumps. Previously, this lock provided a slow path to have a JavaThread wait on the JfrMsg_lock (so that safepoints could proceed). But with the changes associated with JDK-8245113, these threads are now in state _thread_in_native, so this wait is replaced by a simple os::naked_short_sleep().
Thanks to Robbin Ehn for problem analysis.
Thanks
Markus
More information about the hotspot-jfr-dev
mailing list