RFR(M): 8067941: [TESTBUG] Fix tests for OS with 64K page size.

Thomas Schatzl thomas.schatzl at oracle.com
Mon Dec 22 12:00:38 UTC 2014

Hi Goetz,

On Fri, 2014-12-19 at 16:05 +0000, Lindenmaier, Goetz wrote:
> Hi,
> please review this simple change.  I please need a sponsor.
> The change should be downported to 8u60.  It applies nicely except
> for some missing files.
> http://cr.openjdk.java.net/~goetz/webrevs/8067941-64K/webrev.01/
> The issue is that we have linux ppc64 machines that have default page size
> of 64K.  This imposes bigger limits on stack and heap sizes than if running
> with 4k pages.
> Ergonomics increase some flags if they are too small.
> Increasing the sizes used in the test slightly helps in most cases.  Details:
> sanity/ExecuteInternalVMTests.java
> - Assertion in metaspace.cpp simly must fail with vm_page_size == 64K as it
>    basically asserts vm_page_size < 16K

I would skip the entire test in that case (everything from the enclosing
braces) instead of skipping only the actual test and not the setup.

> - With 64K pages, heap sizes are computed differently starting from the alignment
>    which is card_size * vm_page_size.
> gc/arguments/TestMaxHeapSizeTools.java
>   Sizes are alinged up being equal in the end. Choose bigger sizes.

Looks good.

> gc/g1/TestHumongousAllocInitialMark.java
>   Test computes some size based on the -Xmx value it uses.  Heap size is increased slightly
>   with 64K making the computation wrong and the test fail. Choose heap size that needs not
>   be aligned.


> gc/g1/TestGCLogMessages.java
>   Heap of 10M is increased to 32M because of the alignment with 64K pages.
>   This makes the evacuation succeed. Choose 32M from the beginning and adapt
>   size of huge object.



More information about the hotspot-dev mailing list