Does openjdk8u need pre-barrier for jweak?

Liu, Xin xxinliu at amazon.com
Tue Aug 14 00:30:59 UTC 2018


Hi, Kim and Openjdk8-dev,

One of our internal service crashes in G1 Full GC. The error message is very similar to JDK-8177900<https://bugs.openjdk.java.net/browse/JDK-8177900>. Because our service intensively uses MethodHandle to generate MemberName objects. In Openjdk8u, methodHandles.cpp also generates jweak for resolved MemberName. Does it also need to generate pre-barrier? Otherwise, I think it has race-condition for ConcurrentGC.

I observed a newly-allocated DirectMethodHandle object points to a dead MemberName object in G1 remark phase. I backported the patch associated with JDK-8176100<https://bugs.openjdk.java.net/browse/JDK-8176100> to x86-64. It works. I wonder if it’s necessary to backport the patch to jdk8u. if not, how can openjdk8u avoid the race condition?

Another question is which regression test can trigger the issue? Why did you only identify the problem on jdk9+?

Thanks,
--lx

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20180814/f023b0d1/attachment.htm>


More information about the hotspot-gc-dev mailing list