Details
-
Bug
-
Resolution: Fixed
-
P2
-
8u40, 9
-
b93
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8149225 | 8u101 | Stefan Karlsson | P2 | Resolved | Fixed | b01 |
JDK-8144581 | 8u92 | Stefan Karlsson | P2 | Closed | Fixed | b01 |
JDK-8155321 | emb-8u101 | Stefan Karlsson | P2 | Resolved | Fixed | b01 |
Description
Before nmethod is unloaded, all relevant dependencies are removed. But empty nmethodBucket entries are kept. It's a memory leak.
InstanceKlass::clean_dependent_nmethods() does the right job, but it's rarely invoked (only G1KlassCleaningTask::clean_klass() does it).
InstanceKlass::clean_dependent_nmethods() does the right job, but it's rarely invoked (only G1KlassCleaningTask::clean_klass() does it).
Attachments
Issue Links
- backported by
-
JDK-8149225 InstanceKlass::_dependencies list isn't cleared from empty nmethodBucket entries
- Resolved
-
JDK-8155321 InstanceKlass::_dependencies list isn't cleared from empty nmethodBucket entries
- Resolved
-
JDK-8144581 InstanceKlass::_dependencies list isn't cleared from empty nmethodBucket entries
- Closed
- relates to
-
JDK-8049421 G1 Class Unloading after completing a concurrent mark cycle
- Resolved