RFR(XS): 8059559: SIGSEGV at CodeHeap::allocate(unsigned int, bool)
tobias.hartmann at oracle.com
Fri Oct 3 07:43:31 UTC 2014
thanks for the review.
On 02.10.2014 18:18, Vladimir Kozlov wrote:
> This fix is good.
> But I want ask why the test did not catch 8059596 problem? Can you add
> new check for that case?
We did not catch the bug because it occurred only if a
ReservedCodeCacheSize >= 240M was set. None of our tests does this. I
added a corresponding check to the test and made it more robust by also
checking the exit value.
New webrev: http://cr.openjdk.java.net/~thartmann/8059559/webrev.01/
> On 10/2/14 4:49 AM, Tobias Hartmann wrote:
>> please review the following patch.
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8059559
>> Webrev: http://cr.openjdk.java.net/~thartmann/8059559/webrev.00/
>> 'CodeCache::heap_available' assumes that with
>> '-XX:TieredStopAtLevel=0' we only use the interpreter. This is wrong
>> because we still generate compiled forms of method handle intrinsics
>> 'SystemDictionary::find_method_handle_intrinsic'). We therefore need
>> to create the non-profiled code heap.
>> Change 'CodeCache::heap_available' to create the non-profiled code
>> heap if TieredStopAtLevel=0 is set. I also adapted
>> the test ' compiler/codecache/CheckSegmentedCodeCache'.
More information about the hotspot-compiler-dev