RFR: 8366495: Incorrect minimum memory size allocated in allocateNativeInternal() [v2]
Per Minborg
pminborg at openjdk.org
Wed Sep 3 08:31:49 UTC 2025
On Tue, 2 Sep 2025 09:43:23 GMT, Amit Kumar <amitkumar at openjdk.org> wrote:
>> Originally Reported in OpenJ9, fix by @AditiS11 present here: https://github.com/ibmruntimes/openj9-openjdk-jdk25/pull/32
>>
>> These test failure were reported in OpenJ9 (x86), I can't reproduce on my system (s390x):
>>
>> java/foreign/TestFill.java
>> java/foreign/TestSegments.java
>> java/foreign/TestSegmentBulkOperationsContentHash.java
>> java/foreign/TestStringEncoding.java
>> java/foreign/TestVarArgs.java
>>
>>
>>
>> ```java
>> // Always allocate at least some memory so that zero-length segments have distinct
>> // non-zero addresses.
>> alignedSize = Math.max(1, alignedSize);
>>
>>
>> Here minimum-allocated size will be 1, which is incorrect because
>>
>>
>> private static void initNativeMemory(long address, long byteSize) {
>> for (long i = 0; i < byteSize; i += Long.BYTES) {
>> UNSAFE.putLongUnaligned(null, address + i, 0);
>> }
>> }
>>
>> `initNativeMemory()` is going to write Long.
>
> Amit Kumar has updated the pull request incrementally with one additional commit since the last revision:
>
> update
The new changes look good. Thanks for fixing this issue. Please update the title of the PR so we can integrate this one.
-------------
Marked as reviewed by pminborg (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/27027#pullrequestreview-3179528509
More information about the core-libs-dev
mailing list