[9] RFR (S): 8098573: Compiler accesses to shared archive fail if archive is remapped
David Holmes
david.holmes at oracle.com
Tue Jul 12 00:51:37 UTC 2016
On 12/07/2016 2:57 AM, Vladimir Kozlov wrote:
> Looks good to me.
>
> CCing to runtime for them to look.
Seems fine to me.
Thanks,
David
> Thanks,
> Vladimir
>
> On 7/11/16 8:26 AM, Zoltán Majó wrote:
>> Hi,
>>
>>
>> please review the fix for JDK-8098573.
>>
>> https://bugs.openjdk.java.net/browse/JDK-8098573
>>
>> Problem: The VM crashes with a SIGSEGV due to the compiler accessing
>> symbol information in a (AppCDS) shared archive. I
>> was not able to reproduce the crash, but there is evidence to suggest
>> that the crash is caused by the *compiler
>> accessing the shared archive when not in VM state*: While the compiler
>> is reading form the shared archive, an ongoing
>> VM_RedefineClasses operation remaps the shared archive (with different
>> permissions but at the same address), which is
>> the only likely cause of the SEGV_MAPERR in the compiler. For more
>> details please see [1].
>>
>> Solution: Change the destructor ciEnv::~ciEnv() to access symbols in
>> VM state (similar to other places in the compiler
>> accessing symbol information).
>>
>> Webrev:
>> http://cr.openjdk.java.net/~zmajo/8098573/webrev.00/
>>
>> Testing:
>> - JPRT;
>> - RBT testing w/ all hotspot tests is in progress.
>>
>> Thank you!
>>
>> Best regards,
>>
>>
>> Zoltan
>>
>> [1]
>> https://bugs.openjdk.java.net/browse/JDK-8098573?focusedCommentId=13971831&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13971831
>>
>>
More information about the hotspot-compiler-dev
mailing list