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

Lindenmaier, Goetz goetz.lindenmaier at sap.com
Sat Dec 20 20:57:47 UTC 2014


thanks for the Review, Vladimir!

I removed CheckCompileThresholdScaling.java and also TestHumongousCodeCacheRoots.java
which havn't to do anything with page size.
Also, I improved the comment in metaspace.cpp.

I please need another reviewer from gc if possible, and a sponsor!

Best regards,

-----Original Message-----
From: hotspot-dev [mailto:hotspot-dev-bounces at openjdk.java.net] On Behalf Of Vladimir Kozlov
Sent: Friday, December 19, 2014 7:03 PM
To: hotspot-dev at openjdk.java.net
Subject: Re: RFR(M): 8067941: [TESTBUG] Fix tests for OS with 64K page size.

I agree with compiler tests changes. Other groups should review changes 
in their files.

You accidentally included 8067823 in CheckCompileThresholdScaling.java


On 12/19/14 8:05 AM, 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:
> runtime/whitebox/WBStackSize.java
>    The constant esimating the so far occupied stack is too small. Fix: Consider size of shadow pages
> compiler/uncommontrap/TestStackBangRbp.java:
> compiler/uncommontrap/TestStackBangMonitorOwned.java
> compiler/uncommontrap/StackOverflowGuardPagesOff.java
> compiler/uncommontrap/8009761/Test8009761.java
> compiler/runtime/6865265/StackOverflowBug.java
> compiler/exceptions/TestRecursiveReplacedException.java
> Increase stack size to 392K, need at least 328K.
> sanity/ExecuteInternalVMTests.java
> - Assertion in metaspace.cpp simly must fail with vm_page_size == 64K as it
>     basically asserts vm_page_size < 16K
> - 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.
> 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.
> Best regards,
>    Goetz.

More information about the hotspot-dev mailing list