Proposal: ModuleReferenceImpl.c to use ReleaseStringUTFChars not jvmtiDeallocate
Steve Groeger
GROEGES at uk.ibm.com
Sat Aug 26 06:09:48 UTC 2017
Hi Serguei,
Thanks for raising the bug.
No I am not an OpenJDK author hence me asking for a sponsor and information on how to contribute the fix for this issue.
Any guidance you can give will be great.
Thanks
Steve Groeger
Sent from my iPhone
> On 25 Aug 2017, at 19:12, "serguei.spitsyn at oracle.com" <serguei.spitsyn at oracle.com> wrote:
>
> Hi Steve,
>
> Thank you for reporting this!
>
> I've filed the bug:
> https://bugs.openjdk.java.net/browse/JDK-8186776
> use ReleaseStringUTFChars instead of jvmtiDeallocate to release strings
>
> Are you and OpenJDK author?
>
> Thanks,
> Serguei
>
>
>
>> On 8/25/17 10:03, Steve Groeger wrote:
>> I would like to propose the change below to src/jdk.jdwp.agent/share/native/libjdwp/ModuleReferenceImpl.c native code so that the getName function use ReleaseStringUTFChars() to release the memory obtained using GetStringUTFChars() instead of the current jvmtiDeallocate() method.
>>
>> This change seems to be inline with documented use of these functions in the Oracle documentation for JNI Functions (http://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/functions.html)
>>
>> The code as is seems to cause a potential memory leak as the memory may not be released correctly (as the correct Release/Deallocate is not being used).
>>
>> diff --git a/src/jdk.jdwp.agent/share/native/libjdwp/ModuleReferenceImpl.c b/src/jdk.jdwp.agent/share/native/libjdwp/ModuleReferenceImpl.c
>> --- a/src/jdk.jdwp.agent/share/native/libjdwp/ModuleReferenceImpl.c
>> +++ b/src/jdk.jdwp.agent/share/native/libjdwp/ModuleReferenceImpl.c
>> @@ -57,7 +57,7 @@
>> }
>> (void)outStream_writeString(out, name);
>> if (name != NULL) {
>> - jvmtiDeallocate(name);
>> + JNI_FUNC_PTR(env, ReleaseStringUTFChars)(env, namestr, name);
>> }
>> return JNI_TRUE;
>> }
>>
>> I originally raised this issue on the core-libs-dev list but they recommended I raise it on this list.
>> I would appreciate any feedback please, and how I would go about obtaining a sponsor and contributor
>>
>> Thanks
>> Steve Groeger
>
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20170826/59ddcd0d/attachment-0001.html>
More information about the serviceability-dev
mailing list