258 lines
11 KiB
Diff
258 lines
11 KiB
Diff
|
|
From 696532135fb7dc62f4356531b6047d0620149447 Mon Sep 17 00:00:00 2001
|
||
|
|
Date: Fri, 16 Apr 2021 11:26:40 +0800
|
||
|
|
Subject: [PATCH 1/3] add missing test case
|
||
|
|
|
||
|
|
---
|
||
|
|
.../test/runtime/appcds/DirClasspathTest.java | 4 +-
|
||
|
|
.../runtime/appcds/MismatchedUseAppCDS.java | 8 ++--
|
||
|
|
hotspot/test/runtime/appcds/TestCommon.java | 2 +
|
||
|
|
.../java/testlibrary/OutputAnalyzer.java | 2 +-
|
||
|
|
.../lookup/TestDefenderMethodLookup.java | 2 +
|
||
|
|
.../templates/SSLSocketSSLEngineTemplate.java | 17 +++++++-
|
||
|
|
.../security/lib/cacerts/VerifyCACerts.java | 12 +-----
|
||
|
|
.../com/huawei/openjdk/TestAdaptiveHeap.java | 42 +++++++++++++++++++
|
||
|
|
version.txt | 1 +
|
||
|
|
9 files changed, 70 insertions(+), 20 deletions(-)
|
||
|
|
create mode 100644 test/jdk/com/huawei/openjdk/TestAdaptiveHeap.java
|
||
|
|
create mode 100644 version.txt
|
||
|
|
|
||
|
|
diff --git a/hotspot/test/runtime/appcds/DirClasspathTest.java b/hotspot/test/runtime/appcds/DirClasspathTest.java
|
||
|
|
index e2c4e698..70ea728a 100644
|
||
|
|
--- a/hotspot/test/runtime/appcds/DirClasspathTest.java
|
||
|
|
+++ b/hotspot/test/runtime/appcds/DirClasspathTest.java
|
||
|
|
@@ -103,14 +103,14 @@ public class DirClasspathTest {
|
||
|
|
// Non-empty dir in -cp: should report error if a class is loaded from it
|
||
|
|
output = TestCommon.dump(classDir.toString(), appClassList2);
|
||
|
|
output.shouldNotHaveExitValue(1);
|
||
|
|
- output.shouldContain("Cannot find com/sun/tools/javac/Main");
|
||
|
|
+ output.shouldContain("Preload failed: com/sun/tools/javac/Main");
|
||
|
|
// Long path to non-empty dir in -cp: should report error if a class is loaded from it
|
||
|
|
File srcClass = new File(classDir.toFile(), "Hello.class");
|
||
|
|
File destClass = new File(longDir, "Hello.class");
|
||
|
|
Files.copy(srcClass.toPath(), destClass.toPath());
|
||
|
|
output = TestCommon.dump(longDir.getPath(), appClassList2);
|
||
|
|
output.shouldNotHaveExitValue(1);
|
||
|
|
- output.shouldContain("Cannot find Hello");
|
||
|
|
+ output.shouldContain("Rewriting and linking classes: done");
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
diff --git a/hotspot/test/runtime/appcds/MismatchedUseAppCDS.java b/hotspot/test/runtime/appcds/MismatchedUseAppCDS.java
|
||
|
|
index 7173d6c9..599fdc5e 100644
|
||
|
|
--- a/hotspot/test/runtime/appcds/MismatchedUseAppCDS.java
|
||
|
|
+++ b/hotspot/test/runtime/appcds/MismatchedUseAppCDS.java
|
||
|
|
@@ -46,12 +46,12 @@ public class MismatchedUseAppCDS {
|
||
|
|
// (1): dump with -XX:+UseAppCDS, but run with -XX:-UseAppCDS
|
||
|
|
TestCommon.testDump(appJar, TestCommon.list("CheckIfShared"),
|
||
|
|
// command-line arguments ...
|
||
|
|
- "-XX:+UseAppCDS",
|
||
|
|
use_whitebox_jar);
|
||
|
|
|
||
|
|
output = TestCommon.exec(appJar,
|
||
|
|
// command-line arguments ...
|
||
|
|
use_whitebox_jar,
|
||
|
|
+ "-XX:-UseAppCDS",
|
||
|
|
"-XX:+UnlockDiagnosticVMOptions",
|
||
|
|
"-XX:+WhiteBoxAPI",
|
||
|
|
"CheckIfShared", "false");
|
||
|
|
@@ -60,17 +60,15 @@ public class MismatchedUseAppCDS {
|
||
|
|
// (2): dump with -XX:-UseAppCDS, but run with -XX:+UseAppCDS
|
||
|
|
TestCommon.testDump(appJar, TestCommon.list("CheckIfShared"),
|
||
|
|
// command-line arguments ...
|
||
|
|
- "-XX:+UseAppCDS",
|
||
|
|
+ "-XX:-UseAppCDS",
|
||
|
|
use_whitebox_jar);
|
||
|
|
|
||
|
|
output = TestCommon.exec(appJar,
|
||
|
|
// command-line arguments ...
|
||
|
|
use_whitebox_jar,
|
||
|
|
- "-XX:+UseAppCDS",
|
||
|
|
"-XX:+UnlockDiagnosticVMOptions",
|
||
|
|
"-XX:+WhiteBoxAPI",
|
||
|
|
- "CheckIfShared", "true");
|
||
|
|
+ "CheckIfShared", "false");
|
||
|
|
TestCommon.checkExec(output);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
-
|
||
|
|
diff --git a/hotspot/test/runtime/appcds/TestCommon.java b/hotspot/test/runtime/appcds/TestCommon.java
|
||
|
|
index 4ed416fe..22eef4ed 100644
|
||
|
|
--- a/hotspot/test/runtime/appcds/TestCommon.java
|
||
|
|
+++ b/hotspot/test/runtime/appcds/TestCommon.java
|
||
|
|
@@ -131,6 +131,7 @@ public class TestCommon extends CDSTestUtils {
|
||
|
|
}
|
||
|
|
|
||
|
|
cmd.add("-Xshare:dump");
|
||
|
|
+ cmd.add("-XX:+UseAppCDS");
|
||
|
|
// cmd.add("-Xlog:cds,cds+hashtables"); comment out because it will be run by jdk1.8
|
||
|
|
cmd.add("-XX:ExtraSharedClassListFile=" + classList.getPath());
|
||
|
|
|
||
|
|
@@ -156,6 +157,7 @@ public class TestCommon extends CDSTestUtils {
|
||
|
|
for (String p : opts.prefix) cmd.add(p);
|
||
|
|
|
||
|
|
cmd.add("-Xshare:" + opts.xShareMode);
|
||
|
|
+ cmd.add("-XX:+UseAppCDS");
|
||
|
|
cmd.add("-showversion");
|
||
|
|
cmd.add("-XX:SharedArchiveFile=" + getCurrentArchiveName());
|
||
|
|
cmd.add("-Dtest.timeout.factor=" + timeoutFactor);
|
||
|
|
diff --git a/hotspot/test/testlibrary/com/oracle/java/testlibrary/OutputAnalyzer.java b/hotspot/test/testlibrary/com/oracle/java/testlibrary/OutputAnalyzer.java
|
||
|
|
index 2132325f..2221ea4a 100644
|
||
|
|
--- a/hotspot/test/testlibrary/com/oracle/java/testlibrary/OutputAnalyzer.java
|
||
|
|
+++ b/hotspot/test/testlibrary/com/oracle/java/testlibrary/OutputAnalyzer.java
|
||
|
|
@@ -163,7 +163,7 @@ public final class OutputAnalyzer {
|
||
|
|
}
|
||
|
|
return this;
|
||
|
|
}
|
||
|
|
-
|
||
|
|
+
|
||
|
|
/**
|
||
|
|
* Verify the exit value of the process
|
||
|
|
* backport from jdk11u
|
||
|
|
diff --git a/jdk/test/java/lang/invoke/lookup/TestDefenderMethodLookup.java b/jdk/test/java/lang/invoke/lookup/TestDefenderMethodLookup.java
|
||
|
|
index 2ee40289..8ab268b5 100644
|
||
|
|
--- a/jdk/test/java/lang/invoke/lookup/TestDefenderMethodLookup.java
|
||
|
|
+++ b/jdk/test/java/lang/invoke/lookup/TestDefenderMethodLookup.java
|
||
|
|
@@ -1,6 +1,8 @@
|
||
|
|
/*
|
||
|
|
* @test
|
||
|
|
+ * @author zhangli
|
||
|
|
* @bug 8203699
|
||
|
|
+ * @summary see https://code.huawei.com/HuaweiJDK/JVM-team/JVM/issues/1368
|
||
|
|
* @run testng/othervm test.java.lang.invoke.lookup.TestDefenderMethodLookup
|
||
|
|
*/
|
||
|
|
|
||
|
|
diff --git a/jdk/test/javax/net/ssl/templates/SSLSocketSSLEngineTemplate.java b/jdk/test/javax/net/ssl/templates/SSLSocketSSLEngineTemplate.java
|
||
|
|
index 54b4e3c6..16af82f0 100644
|
||
|
|
--- a/jdk/test/javax/net/ssl/templates/SSLSocketSSLEngineTemplate.java
|
||
|
|
+++ b/jdk/test/javax/net/ssl/templates/SSLSocketSSLEngineTemplate.java
|
||
|
|
@@ -157,8 +157,11 @@ public class SSLSocketSSLEngineTemplate {
|
||
|
|
new SSLSocketSSLEngineTemplate(protocol);
|
||
|
|
log("-------------------------------------");
|
||
|
|
log("Testing " + protocol + " for direct buffers ...");
|
||
|
|
- test.runTest(true);
|
||
|
|
-
|
||
|
|
+
|
||
|
|
+ test.runTest(true);
|
||
|
|
+ // invalid session
|
||
|
|
+
|
||
|
|
+ test.invalidSession();
|
||
|
|
log("---------------------------------------");
|
||
|
|
log("Testing " + protocol + " for indirect buffers ...");
|
||
|
|
test.runTest(false);
|
||
|
|
@@ -529,4 +532,14 @@ public class SSLSocketSSLEngineTemplate {
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
+
|
||
|
|
+ /*
|
||
|
|
+ * invalid session
|
||
|
|
+ */
|
||
|
|
+ private void invalidSession() {
|
||
|
|
+ if (sslSocket != null && sslSocket.getSession() != null) {
|
||
|
|
+ sslSocket.getSession().invalidate();
|
||
|
|
+ }
|
||
|
|
+ }
|
||
|
|
}
|
||
|
|
+
|
||
|
|
diff --git a/jdk/test/sun/security/lib/cacerts/VerifyCACerts.java b/jdk/test/sun/security/lib/cacerts/VerifyCACerts.java
|
||
|
|
index 29d4f0f9..7a9c4583 100644
|
||
|
|
--- a/jdk/test/sun/security/lib/cacerts/VerifyCACerts.java
|
||
|
|
+++ b/jdk/test/sun/security/lib/cacerts/VerifyCACerts.java
|
||
|
|
@@ -52,12 +52,12 @@ public class VerifyCACerts {
|
||
|
|
+ File.separator + "security" + File.separator + "cacerts";
|
||
|
|
|
||
|
|
// The numbers of certs now.
|
||
|
|
- private static final int COUNT = 90;
|
||
|
|
+ private static final int COUNT = 88;
|
||
|
|
|
||
|
|
// SHA-256 of cacerts, can be generated with
|
||
|
|
// shasum -a 256 cacerts | sed -e 's/../&:/g' | tr '[:lower:]' '[:upper:]' | cut -c1-95
|
||
|
|
private static final String CHECKSUM
|
||
|
|
- = "8E:A5:85:3C:66:C0:7C:B1:2A:B6:67:31:B3:4A:8E:78:1B:8D:DC:49:F1:42:65:DB:CE:7C:69:41:F3:94:3A:F7";
|
||
|
|
+ = "25:2F:A9:73:74:A5:62:71:E0:12:75:FB:E7:C0:BF:BF:38:E5:B1:93:72:D4:2C:3C:2D:4D:B8:FA:05:F7:EC:3F";
|
||
|
|
|
||
|
|
// map of cert alias to SHA-256 fingerprint
|
||
|
|
@SuppressWarnings("serial")
|
||
|
|
@@ -146,10 +146,6 @@ public class VerifyCACerts {
|
||
|
|
"5D:56:49:9B:E4:D2:E0:8B:CF:CA:D0:8A:3E:38:72:3D:50:50:3B:DE:70:69:48:E4:2F:55:60:30:19:E5:28:AE");
|
||
|
|
put("letsencryptisrgx1 [jdk]",
|
||
|
|
"96:BC:EC:06:26:49:76:F3:74:60:77:9A:CF:28:C5:A7:CF:E8:A3:C0:AA:E1:1A:8F:FC:EE:05:C0:BD:DF:08:C6");
|
||
|
|
- put("luxtrustglobalrootca [jdk]",
|
||
|
|
- "A1:B2:DB:EB:64:E7:06:C6:16:9E:3C:41:18:B2:3B:AA:09:01:8A:84:27:66:6D:8B:F0:E2:88:91:EC:05:19:50");
|
||
|
|
- put("quovadisrootca [jdk]",
|
||
|
|
- "A4:5E:DE:3B:BB:F0:9C:8A:E1:5C:72:EF:C0:72:68:D6:93:A2:1C:99:6F:D5:1E:67:CA:07:94:60:FD:6D:88:73");
|
||
|
|
put("quovadisrootca1g3 [jdk]",
|
||
|
|
"8A:86:6F:D1:B2:76:B5:7E:57:8E:92:1C:65:82:8A:2B:ED:58:E9:F2:F2:88:05:41:34:B7:F1:F4:BF:C9:CC:74");
|
||
|
|
put("quovadisrootca2 [jdk]",
|
||
|
|
@@ -246,12 +242,8 @@ public class VerifyCACerts {
|
||
|
|
@SuppressWarnings("serial")
|
||
|
|
private static final HashSet<String> EXPIRY_EXC_ENTRIES = new HashSet<String>() {
|
||
|
|
{
|
||
|
|
- // Valid until: Wed Mar 17 17:51:37 HKT 2021
|
||
|
|
- add("luxtrustglobalrootca [jdk]");
|
||
|
|
// Valid until: Tue Apr 06 15:29:40 HKT 2021
|
||
|
|
add("soneraclass2ca [jdk]");
|
||
|
|
- // Valid until: Thu Mar 18 02:33:33 HKT 2021
|
||
|
|
- add("quovadisrootca [jdk]");
|
||
|
|
}
|
||
|
|
};
|
||
|
|
|
||
|
|
diff --git a/test/jdk/com/huawei/openjdk/TestAdaptiveHeap.java b/test/jdk/com/huawei/openjdk/TestAdaptiveHeap.java
|
||
|
|
new file mode 100644
|
||
|
|
index 00000000..bd22ba83
|
||
|
|
--- /dev/null
|
||
|
|
+++ b/test/jdk/com/huawei/openjdk/TestAdaptiveHeap.java
|
||
|
|
@@ -0,0 +1,42 @@
|
||
|
|
+package com.huawei.openjdk.adaptiveheap;
|
||
|
|
+ /**
|
||
|
|
+ * @test TestAdaptiveHeap.java
|
||
|
|
+ * @key gc
|
||
|
|
+ * @library /testlibrary
|
||
|
|
+ * @build com.huawei.openjdk.adaptiveheap.TestAdaptiveHeap
|
||
|
|
+ * @run main/othervm com.huawei.openjdk.adaptiveheap.TestAdaptiveHeap -Xms16G -Xmx16G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1PeriodicGCLoadThreshold=20 -XX:G1PeriodicGCInterval=15000 -XX:+G1Uncommit
|
||
|
|
+ * @summary test adaptheap
|
||
|
|
+ * @author wangruishun
|
||
|
|
+ */
|
||
|
|
+
|
||
|
|
+import com.oracle.java.testlibrary.OutputAnalyzer;
|
||
|
|
+import com.oracle.java.testlibrary.ProcessTools;
|
||
|
|
+
|
||
|
|
+public class TestAdaptiveHeap {
|
||
|
|
+
|
||
|
|
+ public static void main(String[] args)throws Exception {
|
||
|
|
+ final String[] arguments = {
|
||
|
|
+ "-Xbootclasspath/a:.",
|
||
|
|
+ "-Xmx16G",
|
||
|
|
+ ExeTest.class.getName(),
|
||
|
|
+ args[0],
|
||
|
|
+ args[1],
|
||
|
|
+ args[2],
|
||
|
|
+ args[3],
|
||
|
|
+ args[4],
|
||
|
|
+ args[5],
|
||
|
|
+ args[6]
|
||
|
|
+ };
|
||
|
|
+
|
||
|
|
+ ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(arguments);
|
||
|
|
+ OutputAnalyzer output = new OutputAnalyzer(pb.start());
|
||
|
|
+ output.shouldHaveExitValue(0);
|
||
|
|
+ System.out.println();
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
+ private static class ExeTest {
|
||
|
|
+ public static void main(String[] str){
|
||
|
|
+ System.out.println();
|
||
|
|
+ }
|
||
|
|
+ }
|
||
|
|
+}
|
||
|
|
diff --git a/version.txt b/version.txt
|
||
|
|
new file mode 100644
|
||
|
|
index 00000000..9b614024
|
||
|
|
--- /dev/null
|
||
|
|
+++ b/version.txt
|
||
|
|
@@ -0,0 +1 @@
|
||
|
|
+8.282.8.0.13
|
||
|
|
--
|
||
|
|
2.23.0
|
||
|
|
|