RFR: 8236847: CDS archive with 4K alignment unusable on machines with 64k pages
Yumin Qi
minqi at openjdk.java.net
Fri Feb 19 18:21:13 UTC 2021
Hi, Please review
Usually most OSes are configured with page size of 4K, but some others are configured with 64K. If jdk binary is built on 4K platform and run on different configured platforms, CDS fails to be loaded due to region alignment mismatch:
Unable to map CDS archive -- os::vm_allocation_granularity() expected: 4096 actual: 65536
This change uses 64K as region alignment if OS page size is less than 64K. For most of the current OSes, means always use 64K as file map region alignment.
The archive size will increase about 300K due to the change.
Tests: tier1-4
Run MacOS/X64 binary on MacOS/aarch64
Thanks
Yumin
-------------
Commit messages:
- 8236847: CDS archive with 4K alignment unusable on machines with 64k pages
Changes: https://git.openjdk.java.net/jdk/pull/2651/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2651&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8236847
Stats: 185 lines in 9 files changed: 128 ins; 14 del; 43 mod
Patch: https://git.openjdk.java.net/jdk/pull/2651.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/2651/head:pull/2651
PR: https://git.openjdk.java.net/jdk/pull/2651
More information about the hotspot-runtime-dev
mailing list