From Coleen's comment:
Yay, a quick code review. Is there a better mt tag than mtInternal though? There are too many mtInternal allocations. Can you add mtSafepoint or mtSynchronize (or better name?) and we could have an RFE to make some of these into the same:
share/runtime/semaphore.hpp:class Semaphore : public CHeapObj<mtInternal> {
share/runtime/mutex.hpp:class Monitor : public CHeapObj<mtInternal> {
share/runtime/objectMonitor.cpp: return AllocateHeap(size, mtInternal);
share/runtime/objectMonitor.cpp: char * knobs = (char *) os::malloc(sz + 2, mtInternal);
share/runtime/monitorChunk.cpp: _monitors = NEW_C_HEAP_ARRAY(BasicObjectLock, number_on_monitors, mtInternal);
Or even mtOS so we can move some of the os allocations to this category?
Why is nothing simple?!
Yay, a quick code review. Is there a better mt tag than mtInternal though? There are too many mtInternal allocations. Can you add mtSafepoint or mtSynchronize (or better name?) and we could have an RFE to make some of these into the same:
share/runtime/semaphore.hpp:class Semaphore : public CHeapObj<mtInternal> {
share/runtime/mutex.hpp:class Monitor : public CHeapObj<mtInternal> {
share/runtime/objectMonitor.cpp: return AllocateHeap(size, mtInternal);
share/runtime/objectMonitor.cpp: char * knobs = (char *) os::malloc(sz + 2, mtInternal);
share/runtime/monitorChunk.cpp: _monitors = NEW_C_HEAP_ARRAY(BasicObjectLock, number_on_monitors, mtInternal);
Or even mtOS so we can move some of the os allocations to this category?
Why is nothing simple?!
- relates to
-
JDK-8208499 NMT: Missing memory tag for Safepoint polling page
- Resolved
There are no Sub-Tasks for this issue.