Code review request: JDK-8005048,NMT: #loaded classes needs to just show the # defined classes

Zhengyu Gu zhengyu.gu at oracle.com
Tue Dec 18 06:53:58 PST 2012


Hi Vitaly,

Thanks for reviewing.

On 12/17/2012 7:24 PM, Vitaly Davidovich wrote:
>
> Hi Zhengyu,
>
> In GenerationData::reset() you delete _recorder_list.  Since this list 
> is built from callers (I.e. caller adds recorders) is it good to 
> delete the head here? I guess this class takes ownership of added 
> recorders?
>
Yes, releasing recorder via MemTracker::release_thread_recorder() is 
cleaner solution, I will make change.


> If so, who deletes the rest of the recorders in the list? I'd expect 
> to see a loop here deleting all recorders in the list.
>
Recorder deletion in coded in recursive manner, in 
MemRecorer::~MemRecorder()

if (_next != NULL)  delete _next;

Thanks,

-Zhengyu


> Thanks
>
> Sent from my phone
>
> On Dec 17, 2012 3:12 PM, "Zhengyu Gu" <zhengyu.gu at oracle.com 
> <mailto:zhengyu.gu at oracle.com>> wrote:
>
>     Current NMT implementation reports number of loaded classes at
>     query time, but number of defined classes is what is expected.
>
>     This changset reflects two major changes:
>
>     1. It counts number of defined classes vs. number of loaded classes
>     2. It counts number of defined classes for each generation, vs.
>     counts at query time. In this way, the number of defined classes
>     that NMT reports, should match the corresponding class metadata
>     data. As the result, the data should be more accurate.
>
>
>     Webrev: http://cr.openjdk.java.net/~zgu/8005048/webrev.00/
>     <http://cr.openjdk.java.net/%7Ezgu/8005048/webrev.00/>
>
>
>     Thanks,
>
>     -Zhengyu
>


More information about the hotspot-dev mailing list