!235 upgrade to jdk8u312-ga
From: @kuenking111 Reviewed-by: @jvmboy Signed-off-by: @jvmboy
This commit is contained in:
commit
4754057bff
@ -1,56 +0,0 @@
|
|||||||
From 9aafe43836f718794f223e1484d20961a2858fc8 Mon Sep 17 00:00:00 2001
|
|
||||||
Date: Fri, 22 Jan 2021 11:31:40 +0800
|
|
||||||
Subject: Backport of JDK-8194246
|
|
||||||
|
|
||||||
summary: JVM crashes when calling getStackTrace if stack contains a method that is a member of a very large class
|
|
||||||
LLT:
|
|
||||||
Bug url: https://bugs.openjdk.java.net/browse/JDK-8194246
|
|
||||||
---
|
|
||||||
hotspot/src/share/vm/classfile/javaClasses.cpp | 12 ++++++------
|
|
||||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/hotspot/src/share/vm/classfile/javaClasses.cpp b/hotspot/src/share/vm/classfile/javaClasses.cpp
|
|
||||||
index a6a452ff3..97a10ac02 100644
|
|
||||||
--- a/hotspot/src/share/vm/classfile/javaClasses.cpp
|
|
||||||
+++ b/hotspot/src/share/vm/classfile/javaClasses.cpp
|
|
||||||
@@ -1454,9 +1454,9 @@ class BacktraceBuilder: public StackObj {
|
|
||||||
method = mhandle();
|
|
||||||
}
|
|
||||||
|
|
||||||
- _methods->short_at_put(_index, method->orig_method_idnum());
|
|
||||||
+ _methods->ushort_at_put(_index, method->orig_method_idnum());
|
|
||||||
_bcis->int_at_put(_index, merge_bci_and_version(bci, method->constants()->version()));
|
|
||||||
- _cprefs->short_at_put(_index, method->name_index());
|
|
||||||
+ _cprefs->ushort_at_put(_index, method->name_index());
|
|
||||||
|
|
||||||
// We need to save the mirrors in the backtrace to keep the class
|
|
||||||
// from being unloaded while we still have this stack trace.
|
|
||||||
@@ -1573,10 +1573,10 @@ void java_lang_Throwable::print_stack_trace(oop throwable, outputStream* st) {
|
|
||||||
Handle mirror(THREAD, mirrors->obj_at(index));
|
|
||||||
// NULL mirror means end of stack trace
|
|
||||||
if (mirror.is_null()) goto handle_cause;
|
|
||||||
- int method = methods->short_at(index);
|
|
||||||
+ int method = methods->ushort_at(index);
|
|
||||||
int version = version_at(bcis->int_at(index));
|
|
||||||
int bci = bci_at(bcis->int_at(index));
|
|
||||||
- int cpref = cprefs->short_at(index);
|
|
||||||
+ int cpref = cprefs->ushort_at(index);
|
|
||||||
print_stack_element(st, mirror, method, version, bci, cpref);
|
|
||||||
}
|
|
||||||
result = objArrayHandle(THREAD, objArrayOop(result->obj_at(trace_next_offset)));
|
|
||||||
@@ -1869,10 +1869,10 @@ oop java_lang_Throwable::get_stack_trace_element(oop throwable, int index, TRAPS
|
|
||||||
|
|
||||||
assert(methods != NULL && bcis != NULL && mirrors != NULL, "sanity check");
|
|
||||||
|
|
||||||
- int method = methods->short_at(chunk_index);
|
|
||||||
+ int method = methods->ushort_at(chunk_index);
|
|
||||||
int version = version_at(bcis->int_at(chunk_index));
|
|
||||||
int bci = bci_at(bcis->int_at(chunk_index));
|
|
||||||
- int cpref = cprefs->short_at(chunk_index);
|
|
||||||
+ int cpref = cprefs->ushort_at(chunk_index);
|
|
||||||
Handle mirror(THREAD, mirrors->obj_at(chunk_index));
|
|
||||||
|
|
||||||
// Chunk can be partial full
|
|
||||||
--
|
|
||||||
2.19.0
|
|
||||||
|
|
||||||
@ -1,83 +0,0 @@
|
|||||||
From 7419e8c4fd5b858c43378cffc55b45845f845191 Mon Sep 17 00:00:00 2001
|
|
||||||
Date: Mon, 8 Mar 2021 09:28:45 +0800
|
|
||||||
Subject: 8214418: half-closed SSLEngine status may cause
|
|
||||||
application dead loop
|
|
||||||
|
|
||||||
Summary: <javax>: half-closed SSLEngine status may cause application dead loop
|
|
||||||
LLT: NA
|
|
||||||
Patch Type: backport
|
|
||||||
Bug url: https://hg.openjdk.java.net/jdk-updates/jdk11u-dev/rev/6852be0de227
|
|
||||||
---
|
|
||||||
.../classes/sun/security/ssl/Ciphertext.java | 2 --
|
|
||||||
.../classes/sun/security/ssl/SSLEngineImpl.java | 15 ++++++++++++++-
|
|
||||||
.../sun/security/ssl/TransportContext.java | 8 +-------
|
|
||||||
3 files changed, 15 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/jdk/src/share/classes/sun/security/ssl/Ciphertext.java b/jdk/src/share/classes/sun/security/ssl/Ciphertext.java
|
|
||||||
index 842db23af..5f95102b4 100644
|
|
||||||
--- a/jdk/src/share/classes/sun/security/ssl/Ciphertext.java
|
|
||||||
+++ b/jdk/src/share/classes/sun/security/ssl/Ciphertext.java
|
|
||||||
@@ -31,8 +31,6 @@ import javax.net.ssl.SSLEngineResult.HandshakeStatus;
|
|
||||||
* Ciphertext
|
|
||||||
*/
|
|
||||||
final class Ciphertext {
|
|
||||||
- static final Ciphertext CIPHERTEXT_NULL = new Ciphertext();
|
|
||||||
-
|
|
||||||
final byte contentType;
|
|
||||||
final byte handshakeType;
|
|
||||||
final long recordSN;
|
|
||||||
diff --git a/jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java b/jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java
|
|
||||||
index 7906e5181..ef64c7b4e 100644
|
|
||||||
--- a/jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java
|
|
||||||
+++ b/jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java
|
|
||||||
@@ -227,6 +227,19 @@ final class SSLEngineImpl extends SSLEngine implements SSLTransport {
|
|
||||||
hsStatus = ciphertext.handshakeStatus;
|
|
||||||
} else {
|
|
||||||
hsStatus = getHandshakeStatus();
|
|
||||||
+ if (ciphertext == null && !conContext.isNegotiated &&
|
|
||||||
+ conContext.isInboundClosed() &&
|
|
||||||
+ hsStatus == HandshakeStatus.NEED_WRAP) {
|
|
||||||
+ // Even the outboud is open, no futher data could be wrapped as:
|
|
||||||
+ // 1. the outbound is empty
|
|
||||||
+ // 2. no negotiated connection
|
|
||||||
+ // 3. the inbound has closed, cannot complete the handshake
|
|
||||||
+ //
|
|
||||||
+ // Mark the engine as closed if the handshake status is
|
|
||||||
+ // NEED_WRAP. Otherwise, it could lead to dead loops in
|
|
||||||
+ // applications.
|
|
||||||
+ status = Status.CLOSED;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
int deltaSrcs = srcsRemains;
|
|
||||||
@@ -258,7 +271,7 @@ final class SSLEngineImpl extends SSLEngine implements SSLTransport {
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ciphertext == null) {
|
|
||||||
- return Ciphertext.CIPHERTEXT_NULL;
|
|
||||||
+ return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Is the handshake completed?
|
|
||||||
diff --git a/jdk/src/share/classes/sun/security/ssl/TransportContext.java b/jdk/src/share/classes/sun/security/ssl/TransportContext.java
|
|
||||||
index e9ffb3802..77a3c3bd5 100644
|
|
||||||
--- a/jdk/src/share/classes/sun/security/ssl/TransportContext.java
|
|
||||||
+++ b/jdk/src/share/classes/sun/security/ssl/TransportContext.java
|
|
||||||
@@ -576,13 +576,7 @@ class TransportContext implements ConnectionContext {
|
|
||||||
} else if (!isOutboundClosed()) {
|
|
||||||
// Special case that the inbound was closed, but outbound open.
|
|
||||||
return HandshakeStatus.NEED_WRAP;
|
|
||||||
- }
|
|
||||||
- } else if (isOutboundClosed() && !isInboundClosed()) {
|
|
||||||
- // Special case that the outbound was closed, but inbound open.
|
|
||||||
- return HandshakeStatus.NEED_UNWRAP;
|
|
||||||
- } else if (!isOutboundClosed() && isInboundClosed()) {
|
|
||||||
- // Special case that the inbound was closed, but outbound open.
|
|
||||||
- return HandshakeStatus.NEED_WRAP;
|
|
||||||
+ } // Otherwise, both inbound and outbound are closed.
|
|
||||||
}
|
|
||||||
|
|
||||||
return HandshakeStatus.NOT_HANDSHAKING;
|
|
||||||
--
|
|
||||||
2.19.0
|
|
||||||
|
|
||||||
@ -1,232 +0,0 @@
|
|||||||
From d58382eb0c18949cd04b76c12c556e6f11036573 Mon Sep 17 00:00:00 2001
|
|
||||||
From: miaozhuojun <mouzhuojun@huawei.com>
|
|
||||||
Date: Sat, 11 Sep 2021 11:35:19 +0800
|
|
||||||
Subject: [PATCH 14/23] 8268453: sun/security/pkcs12/EmptyPassword.java fails
|
|
||||||
with Sequence tag error
|
|
||||||
|
|
||||||
Summary: < JDK> : 8268453: sun/security/pkcs12/EmptyPassword.java fails with Sequence tag error
|
|
||||||
LLT: ./jdk8u/jdk/test/sun/security/pkcs12/EmptyPassword.java
|
|
||||||
Patch Type: backport
|
|
||||||
Bug url: https://bugs.openjdk.java.net/browse/JDK-8268453
|
|
||||||
---
|
|
||||||
.../sun/security/pkcs12/PKCS12KeyStore.java | 125 +++++++++---------
|
|
||||||
1 file changed, 64 insertions(+), 61 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java b/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java
|
|
||||||
index cdd01d6ab..ea3d61f30 100644
|
|
||||||
--- a/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java
|
|
||||||
+++ b/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java
|
|
||||||
@@ -286,6 +286,9 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
} catch (Exception e) {
|
|
||||||
if (password.length == 0) {
|
|
||||||
// Retry using an empty password with a NUL terminator.
|
|
||||||
+ if (debug != null) {
|
|
||||||
+ debug.println("Retry with a NUL password");
|
|
||||||
+ }
|
|
||||||
return f.tryOnce(new char[1]);
|
|
||||||
}
|
|
||||||
throw e;
|
|
||||||
@@ -366,7 +369,7 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
|
|
||||||
try {
|
|
||||||
PBEParameterSpec pbeSpec;
|
|
||||||
- int ic = 0;
|
|
||||||
+ int ic;
|
|
||||||
|
|
||||||
if (algParams != null) {
|
|
||||||
try {
|
|
||||||
@@ -380,68 +383,72 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
if (ic > MAX_ITERATION_COUNT) {
|
|
||||||
throw new IOException("PBE iteration count too large");
|
|
||||||
}
|
|
||||||
+ } else {
|
|
||||||
+ ic = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
- byte[] keyInfo = RetryWithZero.run(pass -> {
|
|
||||||
+ key = RetryWithZero.run(pass -> {
|
|
||||||
// Use JCE
|
|
||||||
SecretKey skey = getPBEKey(pass);
|
|
||||||
Cipher cipher = Cipher.getInstance(
|
|
||||||
mapPBEParamsToAlgorithm(algOid, algParams));
|
|
||||||
cipher.init(Cipher.DECRYPT_MODE, skey, algParams);
|
|
||||||
- return cipher.doFinal(encryptedKey);
|
|
||||||
- }, password);
|
|
||||||
-
|
|
||||||
- /*
|
|
||||||
- * Parse the key algorithm and then use a JCA key factory
|
|
||||||
- * to re-create the key.
|
|
||||||
- */
|
|
||||||
- DerValue val = new DerValue(keyInfo);
|
|
||||||
- DerInputStream in = val.toDerInputStream();
|
|
||||||
- int i = in.getInteger();
|
|
||||||
- DerValue[] value = in.getSequence(2);
|
|
||||||
- if (value.length < 1 || value.length > 2) {
|
|
||||||
- throw new IOException("Invalid length for AlgorithmIdentifier");
|
|
||||||
- }
|
|
||||||
- AlgorithmId algId = new AlgorithmId(value[0].getOID());
|
|
||||||
- String keyAlgo = algId.getName();
|
|
||||||
-
|
|
||||||
- // decode private key
|
|
||||||
- if (entry instanceof PrivateKeyEntry) {
|
|
||||||
- KeyFactory kfac = KeyFactory.getInstance(keyAlgo);
|
|
||||||
- PKCS8EncodedKeySpec kspec = new PKCS8EncodedKeySpec(keyInfo);
|
|
||||||
- key = kfac.generatePrivate(kspec);
|
|
||||||
-
|
|
||||||
- if (debug != null) {
|
|
||||||
- debug.println("Retrieved a protected private key at alias" +
|
|
||||||
- " '" + alias + "' (" +
|
|
||||||
- new AlgorithmId(algOid).getName() +
|
|
||||||
- " iterations: " + ic + ")");
|
|
||||||
+ byte[] keyInfo = cipher.doFinal(encryptedKey);
|
|
||||||
+ /*
|
|
||||||
+ * Parse the key algorithm and then use a JCA key factory
|
|
||||||
+ * to re-create the key.
|
|
||||||
+ */
|
|
||||||
+ DerValue val = new DerValue(keyInfo);
|
|
||||||
+ DerInputStream in = val.toDerInputStream();
|
|
||||||
+ int i = in.getInteger();
|
|
||||||
+ DerValue[] value = in.getSequence(2);
|
|
||||||
+ if (value.length < 1 || value.length > 2) {
|
|
||||||
+ throw new IOException("Invalid length for AlgorithmIdentifier");
|
|
||||||
}
|
|
||||||
+ AlgorithmId algId = new AlgorithmId(value[0].getOID());
|
|
||||||
+ String keyAlgo = algId.getName();
|
|
||||||
|
|
||||||
- // decode secret key
|
|
||||||
- } else {
|
|
||||||
- byte[] keyBytes = in.getOctetString();
|
|
||||||
- SecretKeySpec secretKeySpec =
|
|
||||||
- new SecretKeySpec(keyBytes, keyAlgo);
|
|
||||||
-
|
|
||||||
- // Special handling required for PBE: needs a PBEKeySpec
|
|
||||||
- if (keyAlgo.startsWith("PBE")) {
|
|
||||||
- SecretKeyFactory sKeyFactory =
|
|
||||||
- SecretKeyFactory.getInstance(keyAlgo);
|
|
||||||
- KeySpec pbeKeySpec =
|
|
||||||
- sKeyFactory.getKeySpec(secretKeySpec, PBEKeySpec.class);
|
|
||||||
- key = sKeyFactory.generateSecret(pbeKeySpec);
|
|
||||||
+ // decode private key
|
|
||||||
+ if (entry instanceof PrivateKeyEntry) {
|
|
||||||
+ KeyFactory kfac = KeyFactory.getInstance(keyAlgo);
|
|
||||||
+ PKCS8EncodedKeySpec kspec = new PKCS8EncodedKeySpec(keyInfo);
|
|
||||||
+ Key tmp = kfac.generatePrivate(kspec);
|
|
||||||
+
|
|
||||||
+ if (debug != null) {
|
|
||||||
+ debug.println("Retrieved a protected private key at alias" +
|
|
||||||
+ " '" + alias + "' (" +
|
|
||||||
+ new AlgorithmId(algOid).getName() +
|
|
||||||
+ " iterations: " + ic + ")");
|
|
||||||
+ }
|
|
||||||
+ return tmp;
|
|
||||||
+ // decode secret key
|
|
||||||
} else {
|
|
||||||
- key = secretKeySpec;
|
|
||||||
- }
|
|
||||||
+ byte[] keyBytes = in.getOctetString();
|
|
||||||
+ SecretKeySpec secretKeySpec =
|
|
||||||
+ new SecretKeySpec(keyBytes, keyAlgo);
|
|
||||||
+
|
|
||||||
+ // Special handling required for PBE: needs a PBEKeySpec
|
|
||||||
+ Key tmp;
|
|
||||||
+ if (keyAlgo.startsWith("PBE")) {
|
|
||||||
+ SecretKeyFactory sKeyFactory =
|
|
||||||
+ SecretKeyFactory.getInstance(keyAlgo);
|
|
||||||
+ KeySpec pbeKeySpec =
|
|
||||||
+ sKeyFactory.getKeySpec(secretKeySpec, PBEKeySpec.class);
|
|
||||||
+ tmp = sKeyFactory.generateSecret(pbeKeySpec);
|
|
||||||
+ } else {
|
|
||||||
+ tmp = secretKeySpec;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- if (debug != null) {
|
|
||||||
- debug.println("Retrieved a protected secret key at alias " +
|
|
||||||
- "'" + alias + "' (" +
|
|
||||||
- new AlgorithmId(algOid).getName() +
|
|
||||||
- " iterations: " + ic + ")");
|
|
||||||
+ if (debug != null) {
|
|
||||||
+ debug.println("Retrieved a protected secret key at alias " +
|
|
||||||
+ "'" + alias + "' (" +
|
|
||||||
+ new AlgorithmId(algOid).getName() +
|
|
||||||
+ " iterations: " + ic + ")");
|
|
||||||
+ }
|
|
||||||
+ return tmp;
|
|
||||||
}
|
|
||||||
- }
|
|
||||||
+ }, password);
|
|
||||||
+
|
|
||||||
} catch (Exception e) {
|
|
||||||
UnrecoverableKeyException uke =
|
|
||||||
new UnrecoverableKeyException("Get Key failed: " +
|
|
||||||
@@ -1984,7 +1991,6 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
* Spin over the ContentInfos.
|
|
||||||
*/
|
|
||||||
for (int i = 0; i < count; i++) {
|
|
||||||
- byte[] safeContentsData;
|
|
||||||
ContentInfo safeContents;
|
|
||||||
DerInputStream sci;
|
|
||||||
byte[] eAlgId = null;
|
|
||||||
@@ -1992,14 +1998,13 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
sci = new DerInputStream(safeContentsArray[i].toByteArray());
|
|
||||||
safeContents = new ContentInfo(sci);
|
|
||||||
contentType = safeContents.getContentType();
|
|
||||||
- safeContentsData = null;
|
|
||||||
if (contentType.equals((Object)ContentInfo.DATA_OID)) {
|
|
||||||
|
|
||||||
if (debug != null) {
|
|
||||||
debug.println("Loading PKCS#7 data");
|
|
||||||
}
|
|
||||||
|
|
||||||
- safeContentsData = safeContents.getData();
|
|
||||||
+ loadSafeContents(new DerInputStream(safeContents.getData()));
|
|
||||||
} else if (contentType.equals((Object)ContentInfo.ENCRYPTED_DATA_OID)) {
|
|
||||||
if (password == null) {
|
|
||||||
|
|
||||||
@@ -2029,7 +2034,7 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
if (seq[2].isConstructed())
|
|
||||||
newTag |= 0x20;
|
|
||||||
seq[2].resetTag(newTag);
|
|
||||||
- safeContentsData = seq[2].getOctetString();
|
|
||||||
+ byte[] rawData = seq[2].getOctetString();
|
|
||||||
|
|
||||||
// parse Algorithm parameters
|
|
||||||
DerInputStream in = seq[1].toDerInputStream();
|
|
||||||
@@ -2060,14 +2065,14 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
" iterations: " + ic + ")");
|
|
||||||
}
|
|
||||||
|
|
||||||
- byte[] rawData = safeContentsData;
|
|
||||||
try {
|
|
||||||
- safeContentsData = RetryWithZero.run(pass -> {
|
|
||||||
+ RetryWithZero.run(pass -> {
|
|
||||||
// Use JCE
|
|
||||||
SecretKey skey = getPBEKey(pass);
|
|
||||||
Cipher cipher = Cipher.getInstance(algOid.toString());
|
|
||||||
cipher.init(Cipher.DECRYPT_MODE, skey, algParams);
|
|
||||||
- return cipher.doFinal(rawData);
|
|
||||||
+ loadSafeContents(new DerInputStream(cipher.doFinal(rawData)));
|
|
||||||
+ return null;
|
|
||||||
}, password);
|
|
||||||
} catch (Exception e) {
|
|
||||||
throw new IOException("keystore password was incorrect",
|
|
||||||
@@ -2078,8 +2083,6 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
throw new IOException("public key protected PKCS12" +
|
|
||||||
" not supported");
|
|
||||||
}
|
|
||||||
- DerInputStream sc = new DerInputStream(safeContentsData);
|
|
||||||
- loadSafeContents(sc, password);
|
|
||||||
}
|
|
||||||
|
|
||||||
// The MacData is optional.
|
|
||||||
@@ -2204,7 +2207,7 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
|
||||||
else return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
- private void loadSafeContents(DerInputStream stream, char[] password)
|
|
||||||
+ private void loadSafeContents(DerInputStream stream)
|
|
||||||
throws IOException, NoSuchAlgorithmException, CertificateException
|
|
||||||
{
|
|
||||||
DerValue[] safeBags = stream.getSequence(2);
|
|
||||||
--
|
|
||||||
2.22.0
|
|
||||||
|
|
||||||
@ -2056,22 +2056,17 @@ index d12e25af7..16d410fdc 100644
|
|||||||
Pattern p = Pattern.compile("Full GC");
|
Pattern p = Pattern.compile("Full GC");
|
||||||
|
|
||||||
diff --git a/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java b/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java
|
diff --git a/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java b/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java
|
||||||
index 03158ea00..0b0620028 100644
|
index 048bbad0..af0f4096 100644
|
||||||
--- a/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java
|
--- a/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java
|
||||||
+++ b/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java
|
+++ b/jdk/test/jdk/jfr/event/gc/detailed/ExecuteOOMApp.java
|
||||||
@@ -51,12 +51,12 @@ public class ExecuteOOMApp {
|
@@ -55,8 +55,8 @@ public class ExecuteOOMApp {
|
||||||
OutputAnalyzer out = AppExecutorHelper.executeAndRecord(settings, jfrFilename, additionalVmFlagsList.toArray(new String[0]),
|
|
||||||
OOMApp.class.getName(), String.valueOf(bytesToAllocate));
|
|
||||||
|
|
||||||
- if ((out.getExitValue() == 1 && out.getOutput().contains("Exception: java.lang.OutOfMemoryError"))) {
|
|
||||||
+ if ((out.getExitValue() != 0 && out.getOutput().contains("java.lang.OutOfMemoryError"))) {
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
- out.shouldHaveExitValue(0);
|
- out.shouldHaveExitValue(0);
|
||||||
System.out.println(out.getOutput());
|
System.out.println(out.getOutput());
|
||||||
+ out.shouldHaveExitValue(0);
|
+ out.shouldHaveExitValue(0);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
diff --git a/jdk/test/jdk/jfr/event/gc/detailed/TestG1ConcurrentModeFailureEvent.java b/jdk/test/jdk/jfr/event/gc/detailed/TestG1ConcurrentModeFailureEvent.java
|
diff --git a/jdk/test/jdk/jfr/event/gc/detailed/TestG1ConcurrentModeFailureEvent.java b/jdk/test/jdk/jfr/event/gc/detailed/TestG1ConcurrentModeFailureEvent.java
|
||||||
|
|||||||
Binary file not shown.
@ -146,12 +146,12 @@
|
|||||||
%global origin_nice OpenJDK
|
%global origin_nice OpenJDK
|
||||||
%global top_level_dir_name %{origin}
|
%global top_level_dir_name %{origin}
|
||||||
%global repo jdk8u
|
%global repo jdk8u
|
||||||
%global revision jdk8u302-b07
|
%global revision jdk8u312-b07
|
||||||
%global full_revision %{repo}-%{revision}
|
%global full_revision %{repo}-%{revision}
|
||||||
# Define IcedTea version used for SystemTap tapsets and desktop files
|
# Define IcedTea version used for SystemTap tapsets and desktop files
|
||||||
%global icedteaver 3.15.0
|
%global icedteaver 3.15.0
|
||||||
|
|
||||||
%global updatever 302
|
%global updatever 312
|
||||||
%global buildver b07
|
%global buildver b07
|
||||||
# priority must be 7 digits in total. The expression is workarounding tip
|
# priority must be 7 digits in total. The expression is workarounding tip
|
||||||
%global priority 1800%{updatever}
|
%global priority 1800%{updatever}
|
||||||
@ -977,7 +977,6 @@ Patch21: 8202952.patch
|
|||||||
Patch25: 8196485.patch
|
Patch25: 8196485.patch
|
||||||
Patch26: disable-UseLSE-on-ARMv8.1-by-default.patch
|
Patch26: disable-UseLSE-on-ARMv8.1-by-default.patch
|
||||||
Patch27: 8157570.patch
|
Patch27: 8157570.patch
|
||||||
Patch28: 8194246.patch
|
|
||||||
Patch30: 8191483.patch
|
Patch30: 8191483.patch
|
||||||
Patch31: 8141356.patch
|
Patch31: 8141356.patch
|
||||||
Patch33: 8166253.patch
|
Patch33: 8166253.patch
|
||||||
@ -1059,7 +1058,6 @@ Patch155: Use-atomic-operation-when-G1Uncommit.patch
|
|||||||
Patch157: 8140597-Postpone-the-initial-mark-request-until-the-.patch
|
Patch157: 8140597-Postpone-the-initial-mark-request-until-the-.patch
|
||||||
Patch158: Use-Mutex-when-G1Uncommit.patch
|
Patch158: Use-Mutex-when-G1Uncommit.patch
|
||||||
Patch159: C1-typos-repair.patch
|
Patch159: C1-typos-repair.patch
|
||||||
Patch160: 8214418-half-closed-SSLEngine-status-may-cause-appli.patch
|
|
||||||
Patch162: 8214535-support-Jmap-parallel.patch
|
Patch162: 8214535-support-Jmap-parallel.patch
|
||||||
Patch163: Fixed-a-copyright-writing-problem.patch
|
Patch163: Fixed-a-copyright-writing-problem.patch
|
||||||
Patch164: fix-arguments.cpp-error-C2131-on-windows.patch
|
Patch164: fix-arguments.cpp-error-C2131-on-windows.patch
|
||||||
@ -1108,7 +1106,6 @@ Patch207: fix_bug_in_keypairgenerator.patch
|
|||||||
Patch208: C1-assert-is_virtual-failed-type-check.patch
|
Patch208: C1-assert-is_virtual-failed-type-check.patch
|
||||||
Patch209: 8197387-Run-the-jcmd-tool-as-the-root-user-to-access.patch
|
Patch209: 8197387-Run-the-jcmd-tool-as-the-root-user-to-access.patch
|
||||||
Patch210: create-jfr-dump-file-with-pid-or-timestamp-if-specif.patch
|
Patch210: create-jfr-dump-file-with-pid-or-timestamp-if-specif.patch
|
||||||
Patch211: 8268453-sun-security-pkcs12-EmptyPassword.java-fails.patch
|
|
||||||
Patch212: enhance-the-TimeZone-s-path-solution-on-Euler.patch
|
Patch212: enhance-the-TimeZone-s-path-solution-on-Euler.patch
|
||||||
Patch213: fix-wrong-commitID-in-release-file.patch
|
Patch213: fix-wrong-commitID-in-release-file.patch
|
||||||
Patch214: fix-appcds-s-option-AppCDSLockFile.patch
|
Patch214: fix-appcds-s-option-AppCDSLockFile.patch
|
||||||
@ -1120,6 +1117,8 @@ Patch219: G1Uncommit-Introduce-G1PeriodGCNotRetry-control-whet.patch
|
|||||||
Patch220: JDK-debug-version-crash-when-using-AppCDS.patch
|
Patch220: JDK-debug-version-crash-when-using-AppCDS.patch
|
||||||
Patch221: 8183543-Aarch64-C2-compilation-often-fails-with-fail--last.patch
|
Patch221: 8183543-Aarch64-C2-compilation-often-fails-with-fail--last.patch
|
||||||
|
|
||||||
|
# 8u312
|
||||||
|
|
||||||
#############################################
|
#############################################
|
||||||
#
|
#
|
||||||
# Upstreamable patches
|
# Upstreamable patches
|
||||||
@ -1461,7 +1460,6 @@ pushd %{top_level_dir_name}
|
|||||||
%patch25 -p1
|
%patch25 -p1
|
||||||
%patch26 -p1
|
%patch26 -p1
|
||||||
%patch27 -p1
|
%patch27 -p1
|
||||||
%patch28 -p1
|
|
||||||
%patch30 -p1
|
%patch30 -p1
|
||||||
%patch31 -p1
|
%patch31 -p1
|
||||||
%patch33 -p1
|
%patch33 -p1
|
||||||
@ -1531,7 +1529,6 @@ pushd %{top_level_dir_name}
|
|||||||
%patch157 -p1
|
%patch157 -p1
|
||||||
%patch158 -p1
|
%patch158 -p1
|
||||||
%patch159 -p1
|
%patch159 -p1
|
||||||
%patch160 -p1
|
|
||||||
%patch162 -p1
|
%patch162 -p1
|
||||||
%patch163 -p1
|
%patch163 -p1
|
||||||
%patch164 -p1
|
%patch164 -p1
|
||||||
@ -1575,7 +1572,6 @@ pushd %{top_level_dir_name}
|
|||||||
%patch208 -p1
|
%patch208 -p1
|
||||||
%patch209 -p1
|
%patch209 -p1
|
||||||
%patch210 -p1
|
%patch210 -p1
|
||||||
%patch211 -p1
|
|
||||||
%patch212 -p1
|
%patch212 -p1
|
||||||
%patch213 -p1
|
%patch213 -p1
|
||||||
%patch214 -p1
|
%patch214 -p1
|
||||||
@ -2203,6 +2199,15 @@ require "copy_jdk_configs.lua"
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Nov 11 2021 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.312-b07.0
|
||||||
|
- update to 8u312-b07(ga)
|
||||||
|
- delete 8194246.patch
|
||||||
|
- delete 8214418-half-closed-SSLEngine-status-may-cause-appli.patch
|
||||||
|
- delete 8268453-sun-security-pkcs12-EmptyPassword.java-fails.patch
|
||||||
|
- modified Parallel-Full-GC-for-G1.patch
|
||||||
|
- modified update-cacerts-and-VerifyCACerts.java-test.patch
|
||||||
|
- modified openjdk-1.8.0.spec
|
||||||
|
|
||||||
* Fri Oct 15 2021 zhangweiguo <zhangweiguo2@huawei.com> - 1:1.8.0.302-b07.5
|
* Fri Oct 15 2021 zhangweiguo <zhangweiguo2@huawei.com> - 1:1.8.0.302-b07.5
|
||||||
- parallelize compilation targets and set make JOBS to cpu number
|
- parallelize compilation targets and set make JOBS to cpu number
|
||||||
|
|
||||||
|
|||||||
@ -3,7 +3,6 @@ From: zhangyipeng <zhangyipeng7@huawei.com>
|
|||||||
Date: Tue, 20 Apr 2021 10:40:35 +0800
|
Date: Tue, 20 Apr 2021 10:40:35 +0800
|
||||||
Subject: [PATCH] [Huawei]update cacerts and VerifyCACerts.java test
|
Subject: [PATCH] [Huawei]update cacerts and VerifyCACerts.java test
|
||||||
|
|
||||||
|
|
||||||
Signed-off-by: Wang Kun <wangkun49@huawei.com>
|
Signed-off-by: Wang Kun <wangkun49@huawei.com>
|
||||||
---
|
---
|
||||||
jdk/make/data/cacerts/addtrustexternalca | 32 -----------------
|
jdk/make/data/cacerts/addtrustexternalca | 32 -----------------
|
||||||
@ -260,7 +259,7 @@ index dd107fc..791ddb6 100644
|
|||||||
put("quovadisrootca1g3 [jdk]",
|
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");
|
"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]",
|
put("quovadisrootca2 [jdk]",
|
||||||
@@ -267,20 +247,7 @@ public class VerifyCACerts {
|
@@ -267,22 +247,7 @@ public class VerifyCACerts {
|
||||||
// Exception list to 90 days expiry policy
|
// Exception list to 90 days expiry policy
|
||||||
// No error will be reported if certificate in this list expires
|
// No error will be reported if certificate in this list expires
|
||||||
@SuppressWarnings("serial")
|
@SuppressWarnings("serial")
|
||||||
@ -276,6 +275,8 @@ index dd107fc..791ddb6 100644
|
|||||||
- add("luxtrustglobalrootca [jdk]");
|
- add("luxtrustglobalrootca [jdk]");
|
||||||
- // Valid until: Wed Mar 17 11:33:33 PDT 2021
|
- // Valid until: Wed Mar 17 11:33:33 PDT 2021
|
||||||
- add("quovadisrootca [jdk]");
|
- add("quovadisrootca [jdk]");
|
||||||
|
- // Valid until: Thu Sep 30 14:01:15 GMT 2021
|
||||||
|
- add("identrustdstx3 [jdk]");
|
||||||
- }
|
- }
|
||||||
- };
|
- };
|
||||||
+ private static final HashSet<String> EXPIRY_EXC_ENTRIES = new HashSet<String>();
|
+ private static final HashSet<String> EXPIRY_EXC_ENTRIES = new HashSet<String>();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user