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