RFR: 8236847: CDS archive with 4K alignment unusable on machines with 64k pages [v7]
Yumin Qi
minqi at openjdk.java.net
Thu Mar 11 16:52:10 UTC 2021
On Wed, 10 Mar 2021 18:33:53 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:
>> Yumin Qi has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains seven commits:
>>
>> - Merge branch 'master' into jdk-8236847
>> - Merge master
>> - Add --enable-compatible-cds-alignment for linux-aarch64 and macosx-x64 in jib job
>> - Switch to enble compatible-cds-alignment at configuration
>> - Make CDS core region alignment configurable at build time
>> - Make 64K core region alignment only for specific platforms, also fixed comments as suggestions.
>> - 8236847: CDS archive with 4K alignment unusable on machines with 64k pages
>
> src/hotspot/share/memory/metaspaceShared.cpp line 125:
>
>> 123: // os::vm_allocation_granularity() is usually 4K for most OSes. However, on Linux/aarch64,
>> 124: // it can be either 4K or 64K and on Macosx-arm it is 16K. To generate archives that are
>> 125: // compatible for both settings. An alternative cds core region alignment can be enabled
>
> dot -> comma and lowercase
Thanks. Fixed.
> src/hotspot/os_cpu/bsd_x86/os_bsd_x86.hpp line 30:
>
>> 28: #if defined(COMPATIBLE_CDS_ALIGNMENT)
>> 29: #define CDS_CORE_REGION_ALIGNMENT (16*K)
>> 30: #endif
>
> Could you limit this to `_APPLE_`? I don't think this affects the BSDs.
>
> (We really should separate BSD and MacOS sources at some point.)
>
> Also maybe a comment like this: "Core region alignment is 16K to be able to run binaries built on MacOS x64 on MacOS aarch64." ?
Fixed. Thanks.
-------------
PR: https://git.openjdk.java.net/jdk/pull/2651
More information about the build-dev
mailing list