RFR(M): 8067941: [TESTBUG] Fix tests for OS with 64K page size.
goetz.lindenmaier at sap.com
Mon Jan 5 09:35:40 UTC 2015
could someone from runtime please have a look at the last of these fixes?
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!
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.
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.
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:
The constant esimating the so far occupied stack is too small. Fix: Consider size of shadow pages
Increase stack size to 392K, need at least 328K.
- 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.
Sizes are alinged up being equal in the end. Choose bigger sizes.
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
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-runtime-dev