RFR: 8253650: Cleanup: remove alignment_hint parameter from os::reserve_memory

Thomas Stuefe stuefe at openjdk.java.net
Wed Sep 30 10:18:39 UTC 2020


Hi all,

since ancient times os::reserve_memory() carried around an "alignment_hint" parameter. It was undocumented but from the
name it suggests it would cause os::reserve_memory() to try to align the start of the mapping to a given alignment.
However, the only platform ever doing anything with this parameter was AIX, and there only in mmap() mode. All other
platforms ignored the parameter.

So it can be removed, provided we fix the AIX case.

Notes:
- if one really needs alignment memory, there is os::reserve_memory_aligned() which guarantees the alignment. It will do
  the usual over-reserving-and-chopping-away to do that.
- On AIX there is a second reason why we align the mmap() result pointer to 64K, since we "fake" 64K pages in some
  places. I disentangled that alignment handling from the caller provided alignment.
- This affects os::reserve_memory() as well as the new os::reserve_memory_with_fd()
- I also fixed comments in virtualSpace.cpp which do not apply anymore after JDK-8253638

Tests: tier1, manual builds and tests on AIX

-------------

Commit messages:
 - Fix AIX build error
 - JDK-8253650-remove-alignment-hint-from-os-reserve

Changes: https://git.openjdk.java.net/jdk/pull/430/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=430&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8253650
  Stats: 86 lines in 12 files changed: 4 ins; 37 del; 45 mod
  Patch: https://git.openjdk.java.net/jdk/pull/430.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/430/head:pull/430

PR: https://git.openjdk.java.net/jdk/pull/430


More information about the hotspot-dev mailing list