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 17:09:41 UTC 2021


On Thu, 20 May 2021 14:26:29 GMT, Thomas Stuefe <stuefe 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()?
>> 
>> 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 @kstefanj Thank you for helping me get up to speed on contributing to openjdk as a newbie and for all of the review, suggestions and guidance on getting this patch to where it is today. The patch accomplishes the original goal and is leaps and bounds more readable, better implemented and maintainable. Thank you both also for the patches merged, the CSR and all the effort to prepare for this change and make it better.

I'll comment to integrate today, with knowledge that sponsorship is dependent on the testing Stefan is running. 

Thanks again!

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

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



More information about the hotspot-gc-dev mailing list