RFR: 8256155: Allow multiple large page sizes to be used on Linux [v36]

Marcus G K Williams mgkwill at openjdk.java.net
Thu May 20 15:08:52 UTC 2021


On Fri, 14 May 2021 14:38:11 GMT, Marcus G K Williams <mgkwill at openjdk.org> wrote:

>> Hi,
>> 
>> we see crashes on linux ppc64 with gc/g1/TestLargePageUseForAuxMemory.java. 
>> 
>> #
>> #  Internal Error (/sapmnt/sapjvm_work/openjdk/nb/linuxppc64/jdk-dev/src/hotspot/share/utilities/globalDefinitions.cpp:370), pid=44816, tid=44821
>> #  assert(div != 0) failed: lcm requires positive arguments
>> #
>> 
>> 
>> Stack:
>> 
>> 
>> V  [libjvm.so+0xd22efc]  lcm(unsigned long, unsigned long)+0xdc
>> V  [libjvm.so+0xcc9430]  GCArguments::compute_heap_alignment()+0x70
>> V  [libjvm.so+0x490d1c]  Arguments::apply_ergo()+0x7c
>> V  [libjvm.so+0x186a66c]  Threads::create_vm(JavaVMInitArgs*, bool*)+0x1ec
>> 
>> 
>> Note that ppc64 has 64k pages. I don't have time to investigate this right now, but maybe you can reproduce the crash by faking a 64k page size in os::vm_page_size()?
>
>> Hi,
>> 
>> we see crashes on linux ppc64 with gc/g1/TestLargePageUseForAuxMemory.java.
>> 
>> ```
>> #
>> #  Internal Error (/sapmnt/sapjvm_work/openjdk/nb/linuxppc64/jdk-dev/src/hotspot/share/utilities/globalDefinitions.cpp:370), pid=44816, tid=44821
>> #  assert(div != 0) failed: lcm requires positive arguments
>> #
>> ```
>> 
>> Stack:
>> 
>> ```
>> V  [libjvm.so+0xd22efc]  lcm(unsigned long, unsigned long)+0xdc
>> V  [libjvm.so+0xcc9430]  GCArguments::compute_heap_alignment()+0x70
>> V  [libjvm.so+0x490d1c]  Arguments::apply_ergo()+0x7c
>> V  [libjvm.so+0x186a66c]  Threads::create_vm(JavaVMInitArgs*, bool*)+0x1ec
>> ```
>> 
>> Note that ppc64 has 64k pages. I don't have time to investigate this right now, but maybe you can reproduce the crash by faking a 64k page size in os::vm_page_size()?
> 
> Thanks @tstuefe. Taking a look now.

> Hi @mgkwill , since I have two weeks of vacations upcoming.
> 
> I am fine with the change in its current form, if you take my suggested change (UseLargePages=0 if no default large page size was found). With my addition, the tests at SAP ran through on all our architectures, I could not spot any errors attributable to this patch. Any follow up issues we have not spotted yet we can fix as followups.
> 
> If you have no time, thats fine too; I'll be back second week of june.
> 
> Cheers, Thomas

@tstuefe Working on an update now. Stay tuned.

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

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



More information about the hotspot-gc-dev mailing list