-
Bug
-
Resolution: Fixed
-
P4
-
11, 12, 13
-
b04
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8228365 | 11.0.6-oracle | Martin Doerr | P4 | Resolved | Fixed | b01 |
JDK-8233501 | 11.0.6 | Martin Doerr | P4 | Resolved | Fixed | b02 |
Hotspot code contains a usage of an array placement new in ConcurrentHashTable: "new (memory) Bucket[_size]" where "memory" is allocated by malloc with size "_size * sizeof(Bucket)".
This seems to be fine with nicely behaving compilers (hopefully all we use?).
However, the C++ standard (Section 5.3.4/12) allows the array placement new to use more space than "_size * sizeof(Bucket)". In this case, we may write beyond the allocated memory.
This seems to be fine with nicely behaving compilers (hopefully all we use?).
However, the C++ standard (Section 5.3.4/12) allows the array placement new to use more space than "_size * sizeof(Bucket)". In this case, we may write beyond the allocated memory.
- backported by
-
JDK-8228365 Usage of array placement new may lead to memory corruption
-
- Resolved
-
-
JDK-8233501 Usage of array placement new may lead to memory corruption
-
- Resolved
-