Review Request: 8011161 NMT: Memory leak when encountering out of memory error while initializing memory snapshot
Zhengyu Gu
zhengyu.gu at oracle.com
Thu Apr 4 13:35:47 PDT 2013
Dan,
Thanks for the suggestion. I will post updated webrev once java.net is back.
-Zhengyu
On 4/4/2013 3:14 PM, Daniel D. Daugherty wrote:
> On 4/4/13 11:42 AM, Zhengyu Gu wrote:
>> Updated webrev: http://cr.openjdk.java.net/~zgu/8011161/webrev.01/
>> <http://cr.openjdk.java.net/%7Ezgu/8011161/webrev.01/>
>
> src/share/vm/services/memTracker.cpp
> Please consider this version:
>
> _snapshot = new (std::nothrow)MemSnapshot();
> if (_snapshot != NULL) {
> if (!_snapshot->out_of_memory() && start_worker()) {
> _state = NMT_started;
> NMT_track_callsite = (_tracking_level == NMT_detail &&
> can_walk_stack());
> return;
> }
>
> delete _snapshot;
> _snapshot = NULL;
> }
>
> // fail to start native memory tracking, shut it down
> shutdown(NMT_initialization);
>
>
> Dan
>
>
>>
>> Thanks,
>>
>> -Zhengyu
>>
>>
>>
>> On 4/3/2013 4:35 PM, Calvin Cheung wrote:
>>> Not directly related to this fix, I'm seeing
>>> shutdown(NMT_initialization) can be called twice if start_worker()
>>> has an error before returning false.
>>> 552 shutdown(NMT_initialization);
>>>
>>> again in MemTracker::start():
>>> 144 shutdown(NMT_initialization);
>>>
>>> Perhaps the one at line 552 isn't necessary?
>>>
>>> Calvin
>>>
>>> On 4/3/2013 11:01 AM, Zhengyu Gu wrote:
>>>> Resend. Could anyone review it?
>>>>
>>>> Thanks,
>>>>
>>>> -Zhengyu
>>>>
>>>> On 4/2/2013 10:09 AM, Zhengyu Gu wrote:
>>>>> Fix a memory leak when initializing memory snapshot due to out of
>>>>> memory.
>>>>> In normal case, memory snapshot is released by worker thread. But
>>>>> this case, the worker thread is never started.
>>>>>
>>>>>
>>>>> bug: http://bugs.sun.com/view_bug.do?bug_id=8011161
>>>>> <http://bugs.sun.com/view_bug.do?bug_id=8011161>
>>>>> webrev: http://cr.openjdk.java.net/~zgu/8011161/webrev.00/
>>>>> <http://cr.openjdk.java.net/%7Ezgu/8011161/webrev.00/>
>>>>>
>>>>>
>>>>> Thanks,
>>>>>
>>>>> -Zhengyu
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/attachments/20130404/45c4fa79/attachment.html
More information about the hotspot-runtime-dev
mailing list