6995781: Native Memory Tracking (Phase 1)

7151532: DCmd for hotspot native memory tracking

Implementation of native memory tracking phase 1, which tracks VM native memory usage, and related DCmd

Reviewed-by: acorn, coleenp, fparain
This commit is contained in:
Zhengyu Gu 2012-06-28 17:03:16 -04:00
parent 8e42425c92
commit a39b17624a
315 changed files with 7245 additions and 1477 deletions

View file

@ -111,7 +111,7 @@ void HandleMark::initialize(Thread* thread) {
_chunk = _area->_chunk;
_hwm = _area->_hwm;
_max = _area->_max;
NOT_PRODUCT(_size_in_bytes = _area->_size_in_bytes;)
_size_in_bytes = _area->_size_in_bytes;
debug_only(_area->_handle_mark_nesting++);
assert(_area->_handle_mark_nesting > 0, "must stack allocate HandleMarks");
debug_only(Atomic::inc(&_nof_handlemarks);)
@ -159,7 +159,7 @@ HandleMark::~HandleMark() {
area->_chunk = _chunk;
area->_hwm = _hwm;
area->_max = _max;
NOT_PRODUCT(area->set_size_in_bytes(_size_in_bytes);)
area->set_size_in_bytes(_size_in_bytes);
#ifdef ASSERT
// clear out first chunk (to detect allocation bugs)
if (ZapVMHandleArea) {