RFR(S) 8226406: JVM fails to detect mismatched or corrupt CDS archive
calvin.cheung at oracle.com
Mon Jul 8 16:59:21 UTC 2019
On 7/7/19 5:12 PM, Jiangli Zhou wrote:
> Hi Calvin,
> Per our off-mailing-list email exchange from the previous code review
> for https://bugs.openjdk.java.net/browse/JDK-8211723, I created
> https://bugs.openjdk.java.net/browse/JDK-8227370, 'Remove
Thanks for filing the RFE.
> . I think the crash caused by premature runtime accessing of
> _paths_misc_info_size should be handled as part of JDK-8227370, rather
> than further patching up the SharedPathsMiscInfo
My current patch involves checking most the fields in
CDSFileMapHeaderBase before accessing other fields. This part is
applicable to other fields, not only to the _paths_misc_info_size. This
bug existed for a while and I think it would be a good backport
candidate for 11u. The patch for JDK-8211723 and the follow-up RFE
JDK-8227370 are not necessary to be backported to 11u. I'd like to fix
this bug first and then handle JDK-8227370 as a separate changeset.
> Thanks and regards,
> On Wed, Jul 3, 2019 at 5:59 PM Calvin Cheung <calvin.cheung at oracle.com> wrote:
>> bug: https://bugs.openjdk.java.net/browse/JDK-8226406
>> webrev: http://cr.openjdk.java.net/~ccheung/8226406/webrev.00/
>> This bug was found during a bootcycle build when a shared archive built
>> by a 64-bit JDK version is used by a 32-bit JDK version. It is due to
>> some of the important header fields such as the _jvm_ident was not
>> checked prior to accessinng other fields such as the _paths_misc_info_size.
>> This fix involves checking most the fields in CDSFileMapHeaderBase
>> before accessing other fields.
>> Testing: tiers 1-3.
More information about the hotspot-runtime-dev