RFR(M): 8023014: closed/com/oracle/jfr/compiler/CodeSweeperSweepNoFlushTest.java fails with HS crash
Albert Noll
albert.noll at oracle.com
Wed Sep 25 13:05:27 PDT 2013
Hi,
could I have a review for this patch?
bug: https://bugs.openjdk.java.net/browse/JDK-8023014
webrev: http://cr.openjdk.java.net/~anoll/8023014/webrev.00/
<http://cr.openjdk.java.net/%7Eanoll/8023014/webrev.00/>
Problem: C1/C2 compiler initialization can fail if there is not enough
memory in the code cache to generate all stubs.
This problem occurs only with a small code cache size.
Solution: Check correctness of (parts of) C1/C2 initialization and
disable compiler (C1 and/or C2) if the compiler / thread
was not initialized correctly.
Testing: jprt, test case, benchmarks
This patch also contains a refactored version of compiler object/thread
initialization. In the new version, a compiler object/thread is
initialized prior entering the main compiler loop. In the old version,
the check if the compiler/thread is initialized was
done in the main compiler loop (and hence before every compilation).
To continue execution with a limited code cache size, the code types
'AdapterBlob' and 'MethodHandlesAdapterBlob' must
be 'critical' allocations in the code cache, i.e., they must use space
reserved by CodeCacheMinimumFreeSpace.
In addition I removed some unued code.
Many thanks in advance for reviewing.
Best,
Albert
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20130925/9e9b6904/attachment.html
More information about the hotspot-compiler-dev
mailing list