Add JDK-8228407 backport to resolve crashes during verification.
This commit is contained in:
parent
2e1a7f0c07
commit
ae996c44ac
@ -1073,6 +1073,8 @@ Patch8: s390-8214206_fix.patch
|
||||
# able to be removed once that release is out
|
||||
# and used by this RPM.
|
||||
#############################################
|
||||
# JDK-8237879: make 4.3 breaks build
|
||||
Patch9: jdk8237879-make_4_3_build_fixes.patch
|
||||
# JDK-8241296: Segfault in JNIHandleBlock::oops_do()
|
||||
Patch10: jdk8241296-jnihandleblock_segfault.patch
|
||||
|
||||
@ -1085,10 +1087,10 @@ Patch10: jdk8241296-jnihandleblock_segfault.patch
|
||||
# able to be removed once that release is out
|
||||
# and used by this RPM.
|
||||
#############################################
|
||||
# JDK-8237879: make 4.3 breaks build
|
||||
Patch9: jdk8237879-make_4_3_build_fixes.patch
|
||||
# JDK-8237396: JvmtiTagMap::weak_oops_do() should not trigger barriers
|
||||
Patch11: jdk8237396-avoid_triggering_barriers.patch
|
||||
# JDK-8228407: JVM crashes with shared archive file mismatch
|
||||
Patch12: jdk8228407-shared_archive_crash.patch
|
||||
|
||||
#############################################
|
||||
#
|
||||
@ -1327,6 +1329,7 @@ pushd %{top_level_dir_name}
|
||||
%patch9 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
%patch12 -p1
|
||||
popd # openjdk
|
||||
|
||||
%patch1000
|
||||
@ -1872,6 +1875,9 @@ require "copy_jdk_configs.lua"
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Apr 16 2020 Andrew John Hughes <gnu.andrew@redhat.com> - 1:11.0.7.3-0.0.ea
|
||||
- Add JDK-8228407 backport to resolve crashes during verification.
|
||||
|
||||
* Thu Apr 16 2020 Andrew John Hughes <gnu.andrew@redhat.com> - 1:11.0.7.3-0.0.ea
|
||||
- Update to shenandoah-jdk-11.0.7+3 (EA)
|
||||
|
||||
|
54
jdk8228407-shared_archive_crash.patch
Normal file
54
jdk8228407-shared_archive_crash.patch
Normal file
@ -0,0 +1,54 @@
|
||||
# HG changeset patch
|
||||
# User ccheung
|
||||
# Date 1564075552 25200
|
||||
# Thu Jul 25 10:25:52 2019 -0700
|
||||
# Node ID 1edf6cc224fbf975eadf2a1810f67816a8607d30
|
||||
# Parent 73dbc713d4ddbdbeae71375db1603d85cef47f99
|
||||
8228407: JVM crashes with shared archive file mismatch
|
||||
Summary: Stop processing other header fields if initial header check has failed.
|
||||
Reviewed-by: dholmes, jiangli
|
||||
|
||||
diff --git a/src/hotspot/share/memory/filemap.cpp b/src/hotspot/share/memory/filemap.cpp
|
||||
--- a/src/hotspot/share/memory/filemap.cpp
|
||||
+++ b/src/hotspot/share/memory/filemap.cpp
|
||||
@@ -1287,7 +1287,9 @@
|
||||
}
|
||||
|
||||
init_from_file(_fd);
|
||||
- if (!validate_header()) {
|
||||
+ // UseSharedSpaces could be disabled if the checking of some of the header fields in
|
||||
+ // init_from_file has failed.
|
||||
+ if (!UseSharedSpaces || !validate_header()) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
diff --git a/test/hotspot/jtreg/runtime/appcds/SharedArchiveConsistency.java b/test/hotspot/jtreg/runtime/appcds/SharedArchiveConsistency.java
|
||||
--- a/test/hotspot/jtreg/runtime/appcds/SharedArchiveConsistency.java
|
||||
+++ b/test/hotspot/jtreg/runtime/appcds/SharedArchiveConsistency.java
|
||||
@@ -385,8 +385,16 @@
|
||||
output.shouldNotContain("Checksum verification failed");
|
||||
|
||||
copyFile(orgJsaFile, jsa);
|
||||
+ // modify _jvm_ident and run with -Xshare:auto
|
||||
+ System.out.println("\n2b. Corrupt _jvm_ident run with -Xshare:auto\n");
|
||||
+ modifyJvmIdent();
|
||||
+ output = TestCommon.execAuto(execArgs);
|
||||
+ output.shouldContain("The shared archive file was created by a different version or build of HotSpot");
|
||||
+ output.shouldContain("Hello World");
|
||||
+
|
||||
+ copyFile(orgJsaFile, jsa);
|
||||
// modify _magic and _paths_misc_info_size, test should fail
|
||||
- System.out.println("\n2b. Corrupt _magic and _paths_misc_info_size, should fail\n");
|
||||
+ System.out.println("\n2c. Corrupt _magic and _paths_misc_info_size, should fail\n");
|
||||
modifyHeaderIntField(offset_magic, 0x00000000);
|
||||
modifyHeaderIntField(offset_paths_misc_info_size, Integer.MAX_VALUE);
|
||||
output = TestCommon.execCommon(execArgs);
|
||||
@@ -395,7 +403,7 @@
|
||||
|
||||
copyFile(orgJsaFile, jsa);
|
||||
// modify _version and _paths_misc_info_size, test should fail
|
||||
- System.out.println("\n2c. Corrupt _version and _paths_misc_info_size, should fail\n");
|
||||
+ System.out.println("\n2d. Corrupt _version and _paths_misc_info_size, should fail\n");
|
||||
modifyHeaderIntField(offset_version, 0x00000000);
|
||||
modifyHeaderIntField(offset_paths_misc_info_size, Integer.MAX_VALUE);
|
||||
output = TestCommon.execCommon(execArgs);
|
Loading…
Reference in New Issue
Block a user