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

Lindenmaier, Goetz goetz.lindenmaier at sap.com
Mon Jan 12 07:01:51 UTC 2015


Hi Christian, 

it would be great if you could push this change.  The webrev
is fine from my side.
Thanks a lot for your help!

Best regards,
  Goetz.



-----Original Message-----
From: Christian Tornqvist [mailto:christian.tornqvist at oracle.com] 
Sent: Saturday, January 10, 2015 2:43 PM
To: Lindenmaier, Goetz; hotspot-dev at openjdk.java.net; hotspot-runtime-dev at openjdk.java.net
Subject: RE: RFR(M): 8067941: [TESTBUG] Fix tests for OS with 64K page size.

Hi Goetz,

The WBStackSize.java change looks fine, I can sponsor the change if you
still need a sponsor.

Thanks,
Christian

-----Original Message-----
From: hotspot-runtime-dev
[mailto:hotspot-runtime-dev-bounces at openjdk.java.net] On Behalf Of
Lindenmaier, Goetz
Sent: Monday, January 5, 2015 4:36 AM
To: 'hotspot-dev at openjdk.java.net'; hotspot-runtime-dev at openjdk.java.net
Subject: RE: RFR(M): 8067941: [TESTBUG] Fix tests for OS with 64K page size.

Hi,

could someone from runtime please have a look at the last of these fixes?
runtime/whitebox/WBStackSize.java
http://cr.openjdk.java.net/~goetz/webrevs/8067941-64K/webrev.01/test/runtime
/whitebox/WBStackSize.java.udiff.html<http://cr.openjdk.java.net/%7Egoetz/we
brevs/8067941-64K/webrev.01/test/runtime/whitebox/WBStackSize.java.udiff.htm
l>
I get the shadow page size from WB to compute the space wasted on the stack
so far.

And I please need a sponsor for this!

Best regards,
  Goetz.


From: Lindenmaier, Goetz
Sent: Freitag, 19. Dezember 2014 17:06
To: 'hotspot-dev at openjdk.java.net'
Subject: RFR(M): 8067941: [TESTBUG] Fix tests for OS with 64K page size.

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-runtime-dev mailing list