-
Bug
-
Resolution: Fixed
-
P2
-
20
-
b28
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8298666 | 21 | Coleen Phillimore | P2 | Resolved | Fixed | b02 |
LSan has hinted at a memory leak in MethodData related to _extra_data_lock. It looks like MethodData::deallocate_contents is being called before ~MethodData from Method::release_C_heap_structures(), leading to the memory used by _extra_data_lock not being released.
I confirmed this by switching _extra_data_lock to be a pointer and adding a guarantee to MethodData::deallocate_contents that asserts it should be NULL. It crashes at the guarantee. I'll see if I can get the call trace.
I confirmed this by switching _extra_data_lock to be a pointer and adding a guarantee to MethodData::deallocate_contents that asserts it should be NULL. It crashes at the guarantee. I'll see if I can get the call trace.
- backported by
-
JDK-8298666 Memory leak in Method::build_profiling_method_data
- Resolved
- relates to
-
JDK-8297389 resexhausted003 fails with assert(!thread->owns_locks()) failed: must release all locks when leaving VM
- Resolved
-
JDK-8298346 Metaspace object lifetime management is convoluted
- Closed
(1 links to)