Request for reviews (M): 6947341: JVM Crash running Oracle ATG CRMDemo

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Jun 22 17:37:09 PDT 2010


Thank you, Tom

Vladimir

Tom Rodriguez wrote:
> Looks good.
> 
> tom
> 
> On Jun 22, 2010, at 12:02 PM, Vladimir Kozlov wrote:
> 
>> Thank you, Tom and Paul
>>
>> I updated webrev
>>
>> http://cr.openjdk.java.net/~kvn/6947341/webrev.02
>>
>> Vladimir
>>
>> Tom Rodriguez wrote:
>>> Ok.  Sounds good.
>>> tom
>>> On Jun 22, 2010, at 11:05 AM, Vladimir Kozlov wrote:
>>>> Tom Rodriguez wrote:
>>>>>>> Why does one of the cases return instead of falling through as if the allocation failed?
>>>>>> Because if it did not return it will fall into next code which will do regular allocation (without large pages). I want it to return so an other attempt could be made with different requested address and with large pages.
>>>>> How do you guarantee that it will terminate successfully?
>>>> There are only 2 attempts to allocate at the requested address. If they fail the requested_address is set to NULL and this new code will not be executed.
>>>>
>>>> Vladimir
>>>>
>>>>> tom
>>>>>> Vladimir
>>>>>>
>>>>>>> tom
>>>>>>> On Jun 22, 2010, at 8:46 AM, Vladimir Kozlov wrote:
>>>>>>>> http://cr.openjdk.java.net/~kvn/6947341/webrev
>>>>>>>>
>>>>>>>> Fixed 6947341: JVM Crash running Oracle ATG CRMDemo
>>>>>>>>
>>>>>>>> Missing protected page below heap with compressed oops
>>>>>>>> which use narrow_oop_base and implicit null check.
>>>>>>>> It is caused by ReservedSpace code misses checks that OS
>>>>>>>> reserved heap at requested address.
>>>>>>>>
>>>>>>>> Before 6951686 fix Linux will reserve heap memory at address
>>>>>>>> which is not requested for compressed oops VM (usually above
>>>>>>>> 32Gb virtual address: 0x00002aaaae200000). But VM thinks
>>>>>>>> it did reserve at requested address and it does not need
>>>>>>>> protected page below heap, so the code in protect_noaccess_prefix()
>>>>>>>> is not executed.
>>>>>>>>
>>>>>>>> Solution:
>>>>>>>> Add missing checks. I also added few asserts and prints
>>>>>>>> to make sure memory reservation done correctly for
>>>>>>>> compressed oops.
>>>>>>>>
>>>>>>>> Verified with CRMDemo.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
> 


More information about the hotspot-compiler-dev mailing list