8189360: JvmtiExport::weak_oops_do is called for all JNIHandleBlock instances

Stefan Karlsson stefan.karlsson at oracle.com
Tue Oct 17 20:59:20 UTC 2017


On 2017-10-17 21:55, Kim Barrett wrote:
>> On Oct 16, 2017, at 11:40 AM, Stefan Karlsson <stefan.karlsson at oracle.com> wrote:
>>
>> Hi all,
>>
>> Please review this patch to move the call of the static JvmtiExport::weak_oops_do out of the JNIHandleBlock::weak_oops_do member function into the new WeakProcessor.
>>
>> Today, this isn't causing any bugs because there's only one instance of JNIHandleBlock, the _weak_global_handles. However, in prototypes with more than one JNIHandleBlock, this results in multiple calls to JvmtiExport::weak_oops_do.
>>
>> http://cr.openjdk.java.net/~stefank/8189360/webrev.00/
>> https://bugs.openjdk.java.net/browse/JDK-8189360
>>
>> This patch builds upon the patch in:
>> http://mail.openjdk.java.net/pipermail/hotspot-dev/2017-October/028684.html
>>
>> Tested with JPRT.
>>
>> Thanks,
>> StefanK
> src/hotspot/share/runtime/jniHandles.cpp
> Maybe remove #include “prims/jvmtiExport.hpp” ?
>
> Otherwise looks good.  I don’t need another webrev for that #include removal.
Thanks!

StefanK




More information about the hotspot-dev mailing list