RFR: JDK-8256155: os::Linux Populate all large_page_sizes, select smallest page size in reserve_memory_special_huge_tlbfs* [v9]

Marcus G K Williams github.com+168222+mgkwill at openjdk.java.net
Tue Dec 8 23:29:37 UTC 2020


On Tue, 8 Dec 2020 22:15:34 GMT, Marcus G K Williams <github.com+168222+mgkwill at openjdk.org> wrote:

>>> > > Hi Marcus,
>>> > > I generally like this patch. I will do a more thorough review later. But could this wait please until after JDK16 has been forked off? Since I would like this to spend some more times cooking on our more exotic Linuxes.
>>> > > Cheers, Thomas
>>> > 
>>> > 
>>> > Hi Thomas. I was pushing to get this patch in before JDK16 was forked.
>>> > Can we run exotic Linux tests now? Is there anything else keeping this from inclusion in JDK16?
>>> > As an aside, I will stand behind any patch I get upstream, including maintain it, discuss it or fix bugs.
>>> 
>>> Its a simple matter of cycles. Code freeze is Dec 10. I'm snowed in right now.
>>> 
>>> Ideally I would liked to have run tests on ppc, s390 and aarch64 with multiple large page sizes enabled and used. A gtest for this scenario would also be good.
>>> 
>>> Then, code wise, there are some things we should straighten out. Not necessarily in your patch, but it should happen either before or after your patch is pushed. For example:
>>> 
>>> * we now have duplicate code for scanning the available huge pages
>>> * the new select_large_page_size() feels very similar to the existing os::page_size_for_region_xx() functions.
>>> 
>>> I leave the decision to the others (@stefank @kstefanj ?). If they are fine with rushing this patch in its current form, its fine for me too. If problems arise in our platforms, we will deactivate this coding for non-Intel platforms before shipping jdk16.
>>> 
>>> Cheers, Thomas
>> 
>> I've been looking at gtests (test/hotspot/gtest/runtime/test_os_linux.cpp and test/hotspot/gtest/memory/test_virtualspace.cpp) and correct me if I'm wrong but it seems like a gtest for this scenario (1G + 2m large pages or any variation thereof on different platforms) would require the build system to support page sizes (1G pages in this case) on the VM used to run gtests.
>
> Updated with a merge for changes from master. 
> 
> It appears that some failures were caused by previous merge. See https://bugs.openjdk.java.net/browse/JDK-8257855

There also appears to be an issue on TestSegments.java. See https://github.com/openjdk/jdk/pull/1688 

https://bugs.openjdk.java.net/browse/JDK-8257887

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

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


More information about the hotspot-dev mailing list