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

Thomas Stuefe stuefe at openjdk.java.net
Thu May 20 14:29:38 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

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

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



More information about the hotspot-gc-dev mailing list