RFR: 8309475: Test java/foreign/TestByteBuffer.java fails: a problem with msync (aix) [v2]
JoKern65
duke at openjdk.org
Thu Aug 10 11:50:03 UTC 2023
On Mon, 31 Jul 2023 21:52:25 GMT, Tyler Steele <tsteele at openjdk.org> wrote:
>> This change adds additional support to MappedByteBuffer::force which delegates to msync on AIX. Specifically, it checks whether and error with errno set to EINVAL is the cause of a msync call to an address mmapped with the MAP_PRIVATE flag set. If this flag is set, then the msync call EINVAL is expected, and can be ignored as per the Java documentation of the force method.
>>
>>> In particular, the method has no effect for buffers mapped in read-only or private mapping modes. [1]
>>
>> Separated into separate file as per recommendation by @AlanBateman.
>>
>> [1] https://download.java.net/java/early_access/jdk21/docs/api/java.base/java/nio/MappedByteBuffer.html#force()
>
> Tyler Steele has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:
>
> - Re-Removes problem list entry
> - Maintain linux-specific definition for minicore_vec_t
> - Separate AIX MappedMemoryUtils to new file. Add force0 implementation
> - Replace vm_page_size call with sysconf(_SC_PAGESIZE) in javaClasses.cpp
This is a reasonable solution for the problem.
-------------
Marked as reviewed by JoKern65 at github.com (no known OpenJDK username).
PR Review: https://git.openjdk.org/jdk/pull/14964#pullrequestreview-1571679105
More information about the nio-dev
mailing list