-
Enhancement
-
Resolution: Fixed
-
P4
-
8, openjdk8u
-
b04
This is on behalf of <wattsun@tencent.com>.
-----------------------------------
When do some g1 gc improvement in jdk8u, we found a potential bug in class GenericTaskQueue.
Memory allocated by _array_allocator [1] in class GenericTaskQueue will be freed when ~GenericTaskQueue [2] is called.
And will be freed again when ~ArrayAllocator [3] called again due to free_in_destructor = true.
[1] http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/file/002b9c947f0f/src/share/vm/utilities/taskqueue.hpp#l259
[2] http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/file/002b9c947f0f/src/share/vm/utilities/taskqueue.hpp#l432
[3] http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/file/002b9c947f0f/src/share/vm/memory/allocation.hpp#l736
-----------------------------------
-----------------------------------
When do some g1 gc improvement in jdk8u, we found a potential bug in class GenericTaskQueue.
Memory allocated by _array_allocator [1] in class GenericTaskQueue will be freed when ~GenericTaskQueue [2] is called.
And will be freed again when ~ArrayAllocator [3] called again due to free_in_destructor = true.
[1] http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/file/002b9c947f0f/src/share/vm/utilities/taskqueue.hpp#l259
[2] http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/file/002b9c947f0f/src/share/vm/utilities/taskqueue.hpp#l432
[3] http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/file/002b9c947f0f/src/share/vm/memory/allocation.hpp#l736
-----------------------------------
- relates to
-
JDK-8151436 Leaner ArrayAllocator and BitMaps
- Resolved