openjdk-1.8.0/fix_G1GC_memory_leak_in_numa.patch
2021-06-16 16:50:42 +08:00

39 lines
1.3 KiB
Diff
Executable File

diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.hpp
index 9b26168a8..f6a80bf8d 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.hpp
@@ -45,6 +45,7 @@ protected:
public:
G1Allocator(G1CollectedHeap* heap) :
_g1h(heap), _summary_bytes_used(0) { }
+ virtual ~G1Allocator() { }
// Node index of current thread.
virtual uint current_node_index() const = 0;
@@ -126,7 +127,7 @@ protected:
public:
G1DefaultAllocator(G1CollectedHeap* heap);
- ~G1DefaultAllocator();
+ virtual ~G1DefaultAllocator();
uint current_node_index() const;
uint num_nodes() { return (uint)_num_alloc_regions; }
@@ -253,6 +254,7 @@ protected:
public:
G1ParGCAllocator(G1CollectedHeap* g1h);
+ virtual ~G1ParGCAllocator() { }
static G1ParGCAllocator* create_allocator(G1CollectedHeap* g1h);
@@ -308,7 +310,7 @@ class G1DefaultParGCAllocator : public G1ParGCAllocator {
public:
G1DefaultParGCAllocator(G1CollectedHeap* g1h);
- ~G1DefaultParGCAllocator();
+ virtual ~G1DefaultParGCAllocator();
virtual G1ParGCAllocBuffer* alloc_buffer(InCSetState dest, AllocationContext_t context, uint node_index) {
assert(dest.is_valid(),