RFR (XS) 8016825 Large pages for the heap broken on Windows for compressed oops
thomas.schatzl at oracle.com
Mon Jul 15 09:33:36 UTC 2013
can I have reviews for the following change?
The change fixes the allocation of memory using large pages on Windows
when a particular address is requested under some circumstances.
In particular, VirtualAlloc is always called with a NULL address,
meaning there is no preferred allocation address, which is not the
See src/os/windows/vm/os_windows.cpp line 3155 in the original code.
The other part of the changes contain a test case for that.
This test case is a bit convoluted, as it needs to handle a few edge
cases which are valid behaviors (mostly not getting large pages in the
first place) that should not cause a failed test.
There is no check whether the returned memory consists of large pages; the call to VirtualAlloc() with MEM_LARGE_PAGES always returns large page memory on success.
jprt running the test case, manual testing
To reproduce the test case, you must give yourself permission to use
large pages (http://msdn.microsoft.com/en-us/library/ms190730.aspx) and
run the VM in an elevated shell with -XX:+UseLargePages and -XX:
More information about the hotspot-gc-dev