RFR(S): 8170672: Event-based tracing to support classloader instances

Coleen Phillimore coleen.phillimore at oracle.com
Wed Dec 7 13:06:34 UTC 2016



On 12/7/16 4:50 AM, Markus Gronlund wrote:
> Hi Coleen,
>
> Thanks for your comments - unfortunately i did submit the changeset before I saw your input, sorry about that.
>
> As for the reasons for ResourceMark's in traceStream.hpp, it is mainly for Symbol::as_C_string(), rather than for the actual stream (which is relly just tty) - hope this clarifies a bit.

Yabut if someone passes a logStream for logging, they'll get one a 
nested ResourceMark error.  If you only expect tty, you shouldn't have 
it use outputStream (_st).   The caller should have the ResourceMark.

Can you add this to https://bugs.openjdk.java.net/browse/JDK-8170847
so it gets cleaned up in jdk10.

thanks,
Coleen


>
> Thanks again for having a look, I agree CLD is better than the oop's for this purpose.
>
> Markus
>
>
> -----Original Message-----
> From: Coleen Phillimore
> Sent: den 6 december 2016 23:29
> To: hotspot-runtime-dev at openjdk.java.net
> Subject: Re: RFR(S): 8170672: Event-based tracing to support classloader instances
>
>
> http://cr.openjdk.java.net/~mgronlun/8170672/webrev01/src/share/vm/trace/traceStream.hpp.udiff.html
>
> If _st is a stream that you've passed in like logStream, I don't think you want a ResourceMark because the ResourceMark belongs outside where
> you created the stream.   Otherwise, it could get nested resource mark
> assertions.
>
> This change looks good.  I'm glad you pass the CLD rather than the class_loader oop.
>
> thanks,
> Coleen
>
>
> On 12/5/16 6:33 PM, Markus Gronlund wrote:
>> Greetings,
>>
>>    
>>
>> Kindly asking for reviews for the following changeset:
>>
>>    
>>
>> Bug/Enh: https://bugs.openjdk.java.net/browse/JDK-8170672
>>
>> Webrev: http://cr.openjdk.java.net/~mgronlun/8170672/webrev01/
>>
>> (this work is covered by an FC exception)
>>
>>    
>>
>> Summary:
>>
>> Event-based tracing previously had little information about class loaders; a class loader was essentially treated no different than from a regular class (type information only).
>>
>> With JDK9, supported has been added to java.lang.ClassLoader to associate a name with an individual class loader instance.
>>
>>    
>>
>> This changeset will allow the name information of individual class loader instances to be provided by the event-based tracing framework.
>>
>>    
>>
>> Aux info:
>>
>> Some folding of the numerous macros completed as well.
>>
>>    
>>
>> Thanks in advance
>> Markus
>>
>>    



More information about the hotspot-runtime-dev mailing list