!361 I5TI03:openjdk-1.8.0 build failed on openEuler22.03-LTS-Next
From: @kuenking111 Reviewed-by: @jvmboy Signed-off-by: @jvmboy
This commit is contained in:
commit
aab135b013
4815
7092821-java.security.Provider.getService-is-synchro.patch
Normal file
4815
7092821-java.security.Provider.getService-is-synchro.patch
Normal file
File diff suppressed because it is too large
Load Diff
170
8067941-TESTBUG-Fix-tests-for-OS-with-64K-page-size.patch
Normal file
170
8067941-TESTBUG-Fix-tests-for-OS-with-64K-page-size.patch
Normal file
@ -0,0 +1,170 @@
|
|||||||
|
From c97998519552b7d8287125e46a3db2f29293784f Mon Sep 17 00:00:00 2001
|
||||||
|
From: xiezhaokun <xiezhaokun@huawei.com>
|
||||||
|
Date: Wed, 8 Jun 2022 10:32:52 +0800
|
||||||
|
Subject: [PATCH 08/10] 8067941: [TESTBUG] Fix tests for OS with 64K page size
|
||||||
|
|
||||||
|
---
|
||||||
|
hotspot/src/share/vm/memory/metaspace.cpp | 8 +++++---
|
||||||
|
hotspot/test/compiler/6865265/StackOverflowBug.java | 2 +-
|
||||||
|
hotspot/test/compiler/8009761/Test8009761.java | 2 +-
|
||||||
|
.../exceptions/TestRecursiveReplacedException.java | 2 +-
|
||||||
|
.../compiler/uncommontrap/StackOverflowGuardPagesOff.java | 2 +-
|
||||||
|
.../compiler/uncommontrap/TestStackBangMonitorOwned.java | 2 +-
|
||||||
|
hotspot/test/compiler/uncommontrap/TestStackBangRbp.java | 2 +-
|
||||||
|
hotspot/test/gc/arguments/TestMaxHeapSizeTools.java | 2 +-
|
||||||
|
hotspot/test/gc/g1/TestHumongousAllocInitialMark.java | 4 +++-
|
||||||
|
9 files changed, 15 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/memory/metaspace.cpp b/hotspot/src/share/vm/memory/metaspace.cpp
|
||||||
|
index 600bcfd1..2912f41b 100644
|
||||||
|
--- a/hotspot/src/share/vm/memory/metaspace.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/memory/metaspace.cpp
|
||||||
|
@@ -3937,11 +3937,13 @@ class TestVirtualSpaceNodeTest {
|
||||||
|
assert(cm.sum_free_chunks() == 2*MediumChunk, "sizes should add up");
|
||||||
|
}
|
||||||
|
|
||||||
|
- { // 4 pages of VSN is committed, some is used by chunks
|
||||||
|
+ const size_t page_chunks = 4 * (size_t)os::vm_page_size() / BytesPerWord;
|
||||||
|
+ // This doesn't work for systems with vm_page_size >= 16K.
|
||||||
|
+ if (page_chunks < MediumChunk) {
|
||||||
|
+ // 4 pages of VSN is committed, some is used by chunks
|
||||||
|
ChunkManager cm(SpecializedChunk, SmallChunk, MediumChunk);
|
||||||
|
VirtualSpaceNode vsn(vsn_test_size_bytes);
|
||||||
|
- const size_t page_chunks = 4 * (size_t)os::vm_page_size() / BytesPerWord;
|
||||||
|
- assert(page_chunks < MediumChunk, "Test expects medium chunks to be at least 4*page_size");
|
||||||
|
+
|
||||||
|
vsn.initialize();
|
||||||
|
vsn.expand_by(page_chunks, page_chunks);
|
||||||
|
vsn.get_chunk_vs(SmallChunk);
|
||||||
|
diff --git a/hotspot/test/compiler/6865265/StackOverflowBug.java b/hotspot/test/compiler/6865265/StackOverflowBug.java
|
||||||
|
index 295a6b41..c5d0f3b6 100644
|
||||||
|
--- a/hotspot/test/compiler/6865265/StackOverflowBug.java
|
||||||
|
+++ b/hotspot/test/compiler/6865265/StackOverflowBug.java
|
||||||
|
@@ -28,7 +28,7 @@
|
||||||
|
* @summary JVM crashes with "missing exception handler" error
|
||||||
|
* @author volker.simonis@sap.com
|
||||||
|
*
|
||||||
|
- * @run main/othervm -XX:CompileThreshold=100 -Xbatch -Xss248k StackOverflowBug
|
||||||
|
+ * @run main/othervm -XX:CompileThreshold=100 -Xbatch -Xss512k StackOverflowBug
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/hotspot/test/compiler/8009761/Test8009761.java b/hotspot/test/compiler/8009761/Test8009761.java
|
||||||
|
index 401458b6..b41f49fd 100644
|
||||||
|
--- a/hotspot/test/compiler/8009761/Test8009761.java
|
||||||
|
+++ b/hotspot/test/compiler/8009761/Test8009761.java
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
* @test
|
||||||
|
* @bug 8009761
|
||||||
|
* @summary Deoptimization on sparc doesn't set Llast_SP correctly in the interpreter frames it creates
|
||||||
|
- * @run main/othervm -XX:CompileCommand=exclude,Test8009761::m2 -XX:-UseOnStackReplacement -XX:-BackgroundCompilation -Xss256K Test8009761
|
||||||
|
+ * @run main/othervm -XX:CompileCommand=exclude,Test8009761::m2 -XX:-UseOnStackReplacement -XX:-BackgroundCompilation -Xss512K Test8009761
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
diff --git a/hotspot/test/compiler/exceptions/TestRecursiveReplacedException.java b/hotspot/test/compiler/exceptions/TestRecursiveReplacedException.java
|
||||||
|
index 996d82a0..950ed18c 100644
|
||||||
|
--- a/hotspot/test/compiler/exceptions/TestRecursiveReplacedException.java
|
||||||
|
+++ b/hotspot/test/compiler/exceptions/TestRecursiveReplacedException.java
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
* @test
|
||||||
|
* @bug 8054224
|
||||||
|
* @summary Recursive method compiled by C1 is unable to catch StackOverflowError
|
||||||
|
- * @run main/othervm -Xcomp -XX:CompileOnly=Test.run -XX:+TieredCompilation -XX:TieredStopAtLevel=2 -Xss256K TestRecursiveReplacedException
|
||||||
|
+ * @run main/othervm -Xcomp -XX:CompileOnly=Test.run -XX:+TieredCompilation -XX:TieredStopAtLevel=2 -Xss512K TestRecursiveReplacedException
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
diff --git a/hotspot/test/compiler/uncommontrap/StackOverflowGuardPagesOff.java b/hotspot/test/compiler/uncommontrap/StackOverflowGuardPagesOff.java
|
||||||
|
index 4ad409bb..835283c0 100644
|
||||||
|
--- a/hotspot/test/compiler/uncommontrap/StackOverflowGuardPagesOff.java
|
||||||
|
+++ b/hotspot/test/compiler/uncommontrap/StackOverflowGuardPagesOff.java
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
* @test
|
||||||
|
* @bug 8029383
|
||||||
|
* @summary stack overflow if callee is marked for deoptimization causes crash
|
||||||
|
- * @run main/othervm -XX:TieredStopAtLevel=1 -XX:-BackgroundCompilation -XX:CompileCommand=dontinline,StackOverflowGuardPagesOff::m1 -XX:CompileCommand=exclude,StackOverflowGuardPagesOff::m2 -Xss256K -XX:-UseOnStackReplacement StackOverflowGuardPagesOff
|
||||||
|
+ * @run main/othervm -XX:TieredStopAtLevel=1 -XX:-BackgroundCompilation -XX:CompileCommand=dontinline,StackOverflowGuardPagesOff::m1 -XX:CompileCommand=exclude,StackOverflowGuardPagesOff::m2 -Xss512K -XX:-UseOnStackReplacement StackOverflowGuardPagesOff
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
diff --git a/hotspot/test/compiler/uncommontrap/TestStackBangMonitorOwned.java b/hotspot/test/compiler/uncommontrap/TestStackBangMonitorOwned.java
|
||||||
|
index 3d93d7d5..c07a995d 100644
|
||||||
|
--- a/hotspot/test/compiler/uncommontrap/TestStackBangMonitorOwned.java
|
||||||
|
+++ b/hotspot/test/compiler/uncommontrap/TestStackBangMonitorOwned.java
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
* @test
|
||||||
|
* @bug 8032410
|
||||||
|
* @summary Stack overflow at deoptimization doesn't release owned monitors
|
||||||
|
- * @run main/othervm -XX:-BackgroundCompilation -XX:CompileCommand=dontinline,TestStackBangMonitorOwned::m1 -XX:CompileCommand=exclude,TestStackBangMonitorOwned::m2 -Xss256K -XX:-UseOnStackReplacement TestStackBangMonitorOwned
|
||||||
|
+ * @run main/othervm -XX:-BackgroundCompilation -XX:CompileCommand=dontinline,TestStackBangMonitorOwned::m1 -XX:CompileCommand=exclude,TestStackBangMonitorOwned::m2 -Xss512K -XX:-UseOnStackReplacement TestStackBangMonitorOwned
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class TestStackBangMonitorOwned {
|
||||||
|
diff --git a/hotspot/test/compiler/uncommontrap/TestStackBangRbp.java b/hotspot/test/compiler/uncommontrap/TestStackBangRbp.java
|
||||||
|
index 38d4e206..9b96951a 100644
|
||||||
|
--- a/hotspot/test/compiler/uncommontrap/TestStackBangRbp.java
|
||||||
|
+++ b/hotspot/test/compiler/uncommontrap/TestStackBangRbp.java
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
* @test
|
||||||
|
* @bug 8028308
|
||||||
|
* @summary rbp not restored when stack overflow is thrown from deopt/uncommon trap blobs
|
||||||
|
- * @run main/othervm -XX:-BackgroundCompilation -XX:CompileCommand=dontinline,TestStackBangRbp::m1 -XX:CompileCommand=exclude,TestStackBangRbp::m2 -Xss256K -XX:-UseOnStackReplacement TestStackBangRbp
|
||||||
|
+ * @run main/othervm -XX:-BackgroundCompilation -XX:CompileCommand=dontinline,TestStackBangRbp::m1 -XX:CompileCommand=exclude,TestStackBangRbp::m2 -Xss512K -XX:-UseOnStackReplacement TestStackBangRbp
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class TestStackBangRbp {
|
||||||
|
diff --git a/hotspot/test/gc/arguments/TestMaxHeapSizeTools.java b/hotspot/test/gc/arguments/TestMaxHeapSizeTools.java
|
||||||
|
index b5859b5c..99ed508d 100644
|
||||||
|
--- a/hotspot/test/gc/arguments/TestMaxHeapSizeTools.java
|
||||||
|
+++ b/hotspot/test/gc/arguments/TestMaxHeapSizeTools.java
|
||||||
|
@@ -112,7 +112,7 @@ class TestMaxHeapSizeTools {
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void checkInvalidMinInitialHeapCombinations(String gcflag) throws Exception {
|
||||||
|
- expectError(new String[] { gcflag, "-Xms8M", "-XX:InitialHeapSize=4M", "-version" });
|
||||||
|
+ expectError(new String[] { gcflag, "-Xms64M", "-XX:InitialHeapSize=32M", "-version" });
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void checkValidMinInitialHeapCombinations(String gcflag) throws Exception {
|
||||||
|
diff --git a/hotspot/test/gc/g1/TestHumongousAllocInitialMark.java b/hotspot/test/gc/g1/TestHumongousAllocInitialMark.java
|
||||||
|
index 473ce666..b6e5c3d6 100644
|
||||||
|
--- a/hotspot/test/gc/g1/TestHumongousAllocInitialMark.java
|
||||||
|
+++ b/hotspot/test/gc/g1/TestHumongousAllocInitialMark.java
|
||||||
|
@@ -31,7 +31,9 @@
|
||||||
|
import com.oracle.java.testlibrary.*;
|
||||||
|
|
||||||
|
public class TestHumongousAllocInitialMark {
|
||||||
|
- private static final int heapSize = 200; // MB
|
||||||
|
+ // Heap sizes < 224 MB are increased to 224 MB if vm_page_size == 64K to
|
||||||
|
+ // fulfill alignment constraints.
|
||||||
|
+ private static final int heapSize = 224; // MB
|
||||||
|
private static final int heapRegionSize = 1; // MB
|
||||||
|
private static final int initiatingHeapOccupancyPercent = 50; // %
|
||||||
|
|
||||||
|
diff --git a/hotspot/test/runtime/6929067/invoke.c b/hotspot/test/runtime/6929067/invoke.c
|
||||||
|
index 8dde2cd6..cf8014be 100644
|
||||||
|
--- a/hotspot/test/runtime/6929067/invoke.c
|
||||||
|
+++ b/hotspot/test/runtime/6929067/invoke.c
|
||||||
|
@@ -68,7 +68,7 @@ floobydust (void *p)
|
||||||
|
int
|
||||||
|
main (int argc, const char** argv)
|
||||||
|
{
|
||||||
|
- options[0].optionString = "-Xss320k";
|
||||||
|
+ options[0].optionString = "-Xss512k";
|
||||||
|
|
||||||
|
vm_args.version = JNI_VERSION_1_2;
|
||||||
|
vm_args.ignoreUnrecognized = JNI_TRUE;
|
||||||
|
diff --git a/hotspot/test/runtime/InitialThreadOverflow/invoke.cxx b/hotspot/test/runtime/InitialThreadOverflow/invoke.cxx
|
||||||
|
index 55213c0f..2bca88f1 100644
|
||||||
|
--- a/hotspot/test/runtime/InitialThreadOverflow/invoke.cxx
|
||||||
|
+++ b/hotspot/test/runtime/InitialThreadOverflow/invoke.cxx
|
||||||
|
@@ -48,7 +48,7 @@ floobydust (void *p) {
|
||||||
|
int
|
||||||
|
main (int argc, const char** argv) {
|
||||||
|
JavaVMOption options[1];
|
||||||
|
- options[0].optionString = (char*) "-Xss320k";
|
||||||
|
+ options[0].optionString = (char*) "-Xss512k";
|
||||||
|
|
||||||
|
JavaVMInitArgs vm_args;
|
||||||
|
vm_args.version = JNI_VERSION_1_2;
|
||||||
3938
8143925-enhancing-CounterMode.crypt-for-AESCrypt.patch
Normal file
3938
8143925-enhancing-CounterMode.crypt-for-AESCrypt.patch
Normal file
File diff suppressed because it is too large
Load Diff
114
8159720-Failure-of-C2-compilation-with-tiered-preven.patch
Normal file
114
8159720-Failure-of-C2-compilation-with-tiered-preven.patch
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
From 717ae5f43045b1e2d6f95c52fbd81c54ebf50977 Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Fri, 16 Sep 2022 01:12:20 +0000
|
||||||
|
Subject: 8159720: Failure of C2 compilation with tiered prevents some
|
||||||
|
C1 compilations.
|
||||||
|
|
||||||
|
---
|
||||||
|
hotspot/src/share/vm/opto/compile.cpp | 2 +-
|
||||||
|
hotspot/src/share/vm/opto/compile.hpp | 10 +++-------
|
||||||
|
hotspot/src/share/vm/opto/matcher.cpp | 8 ++++----
|
||||||
|
hotspot/src/share/vm/opto/parse1.cpp | 4 ++--
|
||||||
|
4 files changed, 10 insertions(+), 14 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/opto/compile.cpp b/hotspot/src/share/vm/opto/compile.cpp
|
||||||
|
index 5a42422e1..4a32e8a9f 100644
|
||||||
|
--- a/hotspot/src/share/vm/opto/compile.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/opto/compile.cpp
|
||||||
|
@@ -791,7 +791,7 @@ Compile::Compile( ciEnv* ci_env, C2Compiler* compiler, ciMethod* target, int osr
|
||||||
|
}
|
||||||
|
if (failing()) return;
|
||||||
|
if (cg == NULL) {
|
||||||
|
- record_method_not_compilable_all_tiers("cannot parse method");
|
||||||
|
+ record_method_not_compilable("cannot parse method");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
JVMState* jvms = build_start_state(start(), tf());
|
||||||
|
diff --git a/hotspot/src/share/vm/opto/compile.hpp b/hotspot/src/share/vm/opto/compile.hpp
|
||||||
|
index 1150fd549..fb12b6874 100644
|
||||||
|
--- a/hotspot/src/share/vm/opto/compile.hpp
|
||||||
|
+++ b/hotspot/src/share/vm/opto/compile.hpp
|
||||||
|
@@ -742,16 +742,12 @@ class Compile : public Phase {
|
||||||
|
bool failure_reason_is(const char* r) { return (r==_failure_reason) || (r!=NULL && _failure_reason!=NULL && strcmp(r, _failure_reason)==0); }
|
||||||
|
|
||||||
|
void record_failure(const char* reason);
|
||||||
|
- void record_method_not_compilable(const char* reason, bool all_tiers = false) {
|
||||||
|
- // All bailouts cover "all_tiers" when TieredCompilation is off.
|
||||||
|
- if (!TieredCompilation) all_tiers = true;
|
||||||
|
- env()->record_method_not_compilable(reason, all_tiers);
|
||||||
|
+ void record_method_not_compilable(const char* reason) {
|
||||||
|
+ // Bailouts cover "all_tiers" when TieredCompilation is off.
|
||||||
|
+ env()->record_method_not_compilable(reason, !TieredCompilation);
|
||||||
|
// Record failure reason.
|
||||||
|
record_failure(reason);
|
||||||
|
}
|
||||||
|
- void record_method_not_compilable_all_tiers(const char* reason) {
|
||||||
|
- record_method_not_compilable(reason, true);
|
||||||
|
- }
|
||||||
|
bool check_node_count(uint margin, const char* reason) {
|
||||||
|
if (live_nodes() + margin > max_node_limit()) {
|
||||||
|
record_method_not_compilable(reason);
|
||||||
|
diff --git a/hotspot/src/share/vm/opto/matcher.cpp b/hotspot/src/share/vm/opto/matcher.cpp
|
||||||
|
index 07b8ee4c6..b26015ce6 100644
|
||||||
|
--- a/hotspot/src/share/vm/opto/matcher.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/opto/matcher.cpp
|
||||||
|
@@ -137,7 +137,7 @@ OptoReg::Name Matcher::warp_incoming_stk_arg( VMReg reg ) {
|
||||||
|
_in_arg_limit = OptoReg::add(warped, 1); // Bump max stack slot seen
|
||||||
|
if (!RegMask::can_represent_arg(warped)) {
|
||||||
|
// the compiler cannot represent this method's calling sequence
|
||||||
|
- C->record_method_not_compilable_all_tiers("unsupported incoming calling sequence");
|
||||||
|
+ C->record_method_not_compilable("unsupported incoming calling sequence");
|
||||||
|
return OptoReg::Bad;
|
||||||
|
}
|
||||||
|
return warped;
|
||||||
|
@@ -1148,7 +1148,7 @@ OptoReg::Name Matcher::warp_outgoing_stk_arg( VMReg reg, OptoReg::Name begin_out
|
||||||
|
if( warped >= out_arg_limit_per_call )
|
||||||
|
out_arg_limit_per_call = OptoReg::add(warped,1);
|
||||||
|
if (!RegMask::can_represent_arg(warped)) {
|
||||||
|
- C->record_method_not_compilable_all_tiers("unsupported calling sequence");
|
||||||
|
+ C->record_method_not_compilable("unsupported calling sequence");
|
||||||
|
return OptoReg::Bad;
|
||||||
|
}
|
||||||
|
return warped;
|
||||||
|
@@ -1327,7 +1327,7 @@ MachNode *Matcher::match_sfpt( SafePointNode *sfpt ) {
|
||||||
|
uint r_cnt = mcall->tf()->range()->cnt();
|
||||||
|
MachProjNode *proj = new (C) MachProjNode( mcall, r_cnt+10000, RegMask::Empty, MachProjNode::fat_proj );
|
||||||
|
if (!RegMask::can_represent_arg(OptoReg::Name(out_arg_limit_per_call-1))) {
|
||||||
|
- C->record_method_not_compilable_all_tiers("unsupported outgoing calling sequence");
|
||||||
|
+ C->record_method_not_compilable("unsupported outgoing calling sequence");
|
||||||
|
} else {
|
||||||
|
for (int i = begin_out_arg_area; i < out_arg_limit_per_call; i++)
|
||||||
|
proj->_rout.Insert(OptoReg::Name(i));
|
||||||
|
@@ -1515,7 +1515,7 @@ Node *Matcher::Label_Root( const Node *n, State *svec, Node *control, const Node
|
||||||
|
// out of stack space. See bugs 6272980 & 6227033 for more info.
|
||||||
|
LabelRootDepth++;
|
||||||
|
if (LabelRootDepth > MaxLabelRootDepth) {
|
||||||
|
- C->record_method_not_compilable_all_tiers("Out of stack space, increase MaxLabelRootDepth");
|
||||||
|
+ C->record_method_not_compilable("Out of stack space, increase MaxLabelRootDepth");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
uint care = 0; // Edges matcher cares about
|
||||||
|
diff --git a/hotspot/src/share/vm/opto/parse1.cpp b/hotspot/src/share/vm/opto/parse1.cpp
|
||||||
|
index a9ef4f910..4fcd58cb4 100644
|
||||||
|
--- a/hotspot/src/share/vm/opto/parse1.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/opto/parse1.cpp
|
||||||
|
@@ -415,7 +415,7 @@ Parse::Parse(JVMState* caller, ciMethod* parse_method, float expected_uses)
|
||||||
|
_iter.reset_to_method(method());
|
||||||
|
_flow = method()->get_flow_analysis();
|
||||||
|
if (_flow->failing()) {
|
||||||
|
- C->record_method_not_compilable_all_tiers(_flow->failure_reason());
|
||||||
|
+ C->record_method_not_compilable(_flow->failure_reason());
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifndef PRODUCT
|
||||||
|
@@ -1088,7 +1088,7 @@ SafePointNode* Parse::create_entry_map() {
|
||||||
|
// Check for really stupid bail-out cases.
|
||||||
|
uint len = TypeFunc::Parms + method()->max_locals() + method()->max_stack();
|
||||||
|
if (len >= 32760) {
|
||||||
|
- C->record_method_not_compilable_all_tiers("too many local variables");
|
||||||
|
+ C->record_method_not_compilable("too many local variables");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.18.0.huawei.25
|
||||||
|
|
||||||
@ -1,85 +0,0 @@
|
|||||||
From 72853c670c97aae4eab64a5e9edb3c7176beaf6a Mon Sep 17 00:00:00 2001
|
|
||||||
Date: Fri, 22 Jan 2021 16:36:41 +0800
|
|
||||||
Subject: 8168926: C2: Bytecode escape analyzer crashes due to
|
|
||||||
stack overflow
|
|
||||||
|
|
||||||
Summary: <C2>:8168926: C2: Bytecode escape analyzer crashes due to stack overflow
|
|
||||||
LLT: N/A
|
|
||||||
Bug url: https://bugs.openjdk.java.net/browse/JDK-8168926
|
|
||||||
---
|
|
||||||
hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp | 30 ++++++++++++++++++--
|
|
||||||
hotspot/src/share/vm/ci/ciMethod.hpp | 12 +++++---
|
|
||||||
2 files changed, 35 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp b/hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp
|
|
||||||
index 2b9e0e514..34bdbe94d 100644
|
|
||||||
--- a/hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp
|
|
||||||
+++ b/hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp
|
|
||||||
@@ -894,9 +894,33 @@ void BCEscapeAnalyzer::iterate_one_block(ciBlock *blk, StateInfo &state, Growabl
|
|
||||||
ciMethod* target = s.get_method(ignored_will_link, &declared_signature);
|
|
||||||
ciKlass* holder = s.get_declared_method_holder();
|
|
||||||
assert(declared_signature != NULL, "cannot be null");
|
|
||||||
- // Push appendix argument, if one.
|
|
||||||
- if (s.has_appendix()) {
|
|
||||||
- state.apush(unknown_obj);
|
|
||||||
+ // If the current bytecode has an attached appendix argument,
|
|
||||||
+ // push an unknown object to represent that argument. (Analysis
|
|
||||||
+ // of dynamic call sites, especially invokehandle calls, needs
|
|
||||||
+ // the appendix argument on the stack, in addition to "regular" arguments
|
|
||||||
+ // pushed onto the stack by bytecode instructions preceding the call.)
|
|
||||||
+ //
|
|
||||||
+ // The escape analyzer does _not_ use the ciBytecodeStream::has_appendix(s)
|
|
||||||
+ // method to determine whether the current bytecode has an appendix argument.
|
|
||||||
+ // The has_appendix() method obtains the appendix from the
|
|
||||||
+ // ConstantPoolCacheEntry::_f1 field, which can happen concurrently with
|
|
||||||
+ // resolution of dynamic call sites. Callees in the
|
|
||||||
+ // ciBytecodeStream::get_method() call above also access the _f1 field;
|
|
||||||
+ // interleaving the get_method() and has_appendix() calls in the current
|
|
||||||
+ // method with call site resolution can lead to an inconsistent view of
|
|
||||||
+ // the current method's argument count. In particular, some interleaving(s)
|
|
||||||
+ // can cause the method's argument count to not include the appendix, which
|
|
||||||
+ // then leads to stack over-/underflow in the escape analyzer.
|
|
||||||
+ //
|
|
||||||
+ // Instead of pushing the argument if has_appendix() is true, the escape analyzer
|
|
||||||
+ // pushes an appendix for all call sites targeted by invokedynamic and invokehandle
|
|
||||||
+ // instructions, except if the call site is the _invokeBasic intrinsic
|
|
||||||
+ // (that intrinsic is always targeted by an invokehandle instruction but does
|
|
||||||
+ // not have an appendix argument).
|
|
||||||
+ if (target->is_loaded() &&
|
|
||||||
+ Bytecodes::has_optional_appendix(s.cur_bc_raw()) &&
|
|
||||||
+ target->intrinsic_id() != vmIntrinsics::_invokeBasic) {
|
|
||||||
+ state.apush(unknown_obj);
|
|
||||||
}
|
|
||||||
// Pass in raw bytecode because we need to see invokehandle instructions.
|
|
||||||
invoke(state, s.cur_bc_raw(), target, holder);
|
|
||||||
diff --git a/hotspot/src/share/vm/ci/ciMethod.hpp b/hotspot/src/share/vm/ci/ciMethod.hpp
|
|
||||||
index 307452422..99d8dbe67 100644
|
|
||||||
--- a/hotspot/src/share/vm/ci/ciMethod.hpp
|
|
||||||
+++ b/hotspot/src/share/vm/ci/ciMethod.hpp
|
|
||||||
@@ -133,15 +133,19 @@ class ciMethod : public ciMetadata {
|
|
||||||
check_is_loaded();
|
|
||||||
return _signature->size() + (_flags.is_static() ? 0 : 1);
|
|
||||||
}
|
|
||||||
- // Report the number of elements on stack when invoking this method.
|
|
||||||
- // This is different than the regular arg_size because invokedynamic
|
|
||||||
- // has an implicit receiver.
|
|
||||||
+ // Report the number of elements on stack when invoking the current method.
|
|
||||||
+ // If the method is loaded, arg_size() gives precise information about the
|
|
||||||
+ // number of stack elements (using the method's signature and its flags).
|
|
||||||
+ // However, if the method is not loaded, the number of stack elements must
|
|
||||||
+ // be determined differently, as the method's flags are not yet available.
|
|
||||||
+ // The invoke_arg_size() method assumes in that case that all bytecodes except
|
|
||||||
+ // invokestatic and invokedynamic have a receiver that is also pushed onto the
|
|
||||||
+ // stack by the caller of the current method.
|
|
||||||
int invoke_arg_size(Bytecodes::Code code) const {
|
|
||||||
if (is_loaded()) {
|
|
||||||
return arg_size();
|
|
||||||
} else {
|
|
||||||
int arg_size = _signature->size();
|
|
||||||
- // Add a receiver argument, maybe:
|
|
||||||
if (code != Bytecodes::_invokestatic &&
|
|
||||||
code != Bytecodes::_invokedynamic) {
|
|
||||||
arg_size++;
|
|
||||||
--
|
|
||||||
2.19.0
|
|
||||||
|
|
||||||
29
8173339-AArch64-Fix-minimum-stack-size-computations.patch
Normal file
29
8173339-AArch64-Fix-minimum-stack-size-computations.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
From 85a351276984f56d817560db8b5b837254ec2994 Mon Sep 17 00:00:00 2001
|
||||||
|
From: zhangyipeng <zhangyipeng7@huawei.com>
|
||||||
|
Date: Tue, 7 Jun 2022 20:10:03 +0800
|
||||||
|
Subject: [PATCH 05/10] 8173339: AArch64: Fix minimum stack size computations
|
||||||
|
|
||||||
|
Bug url: https://bugs.openjdk.java.net/browse/JDK-8173339
|
||||||
|
---
|
||||||
|
hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp | 5 ++++-
|
||||||
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp b/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp
|
||||||
|
index 6610cc4fb..7c6b24879 100644
|
||||||
|
--- a/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp
|
||||||
|
+++ b/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp
|
||||||
|
@@ -56,7 +56,10 @@ define_pd_global(intx, InlineFrequencyCount, 100);
|
||||||
|
define_pd_global(intx, StackYellowPages, 2);
|
||||||
|
define_pd_global(intx, StackRedPages, 1);
|
||||||
|
|
||||||
|
-define_pd_global(intx, StackShadowPages, 4 DEBUG_ONLY(+5));
|
||||||
|
+// Java_java_net_SocketOutputStream_socketWrite0() uses a 64k buffer on the
|
||||||
|
+// stack if compiled for unix and LP64. To pass stack overflow tests we need
|
||||||
|
+// 20 shadow pages.
|
||||||
|
+define_pd_global(intx, StackShadowPages, 20 DEBUG_ONLY(+5));
|
||||||
|
|
||||||
|
define_pd_global(intx, PreInflateSpin, 10);
|
||||||
|
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
156
8194154.patch
156
8194154.patch
@ -1,156 +0,0 @@
|
|||||||
From 5547d1f77577ad8514136255eed16921e4d02845 Mon Sep 17 00:00:00 2001
|
|
||||||
Date: Fri, 22 Jan 2021 15:23:47 +0800
|
|
||||||
Subject: 8194154: System property user.dir should not be changed
|
|
||||||
|
|
||||||
Summary: <io>: System property user.dir should not be changed
|
|
||||||
LLT: jdk/test/java/io/File/UserDirChangedTest.java
|
|
||||||
Bug url: https://bugs.openjdk.java.net/browse/JDK-8194154
|
|
||||||
---
|
|
||||||
.../classes/java/io/UnixFileSystem.java | 11 +++-
|
|
||||||
.../classes/java/io/WinNTFileSystem.java | 11 +++-
|
|
||||||
jdk/test/java/io/File/UserDirChangedTest.java | 51 +++++++++++++++++++
|
|
||||||
3 files changed, 69 insertions(+), 4 deletions(-)
|
|
||||||
create mode 100644 jdk/test/java/io/File/UserDirChangedTest.java
|
|
||||||
|
|
||||||
diff --git a/jdk/src/solaris/classes/java/io/UnixFileSystem.java b/jdk/src/solaris/classes/java/io/UnixFileSystem.java
|
|
||||||
index fb0fef636..a6ef2d3a6 100644
|
|
||||||
--- a/jdk/src/solaris/classes/java/io/UnixFileSystem.java
|
|
||||||
+++ b/jdk/src/solaris/classes/java/io/UnixFileSystem.java
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/*
|
|
||||||
- * Copyright (c) 1998, 2022, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
+ * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
||||||
*
|
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
|
||||||
@@ -34,6 +34,7 @@ class UnixFileSystem extends FileSystem {
|
|
||||||
private final char slash;
|
|
||||||
private final char colon;
|
|
||||||
private final String javaHome;
|
|
||||||
+ private final String userDir;
|
|
||||||
|
|
||||||
public UnixFileSystem() {
|
|
||||||
slash = AccessController.doPrivileged(
|
|
||||||
@@ -42,6 +43,8 @@ class UnixFileSystem extends FileSystem {
|
|
||||||
new GetPropertyAction("path.separator")).charAt(0);
|
|
||||||
javaHome = AccessController.doPrivileged(
|
|
||||||
new GetPropertyAction("java.home"));
|
|
||||||
+ userDir = AccessController.doPrivileged(
|
|
||||||
+ new GetPropertyAction("user.dir"));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@@ -130,7 +133,11 @@ class UnixFileSystem extends FileSystem {
|
|
||||||
|
|
||||||
public String resolve(File f) {
|
|
||||||
if (isAbsolute(f)) return f.getPath();
|
|
||||||
- return resolve(System.getProperty("user.dir"), f.getPath());
|
|
||||||
+ SecurityManager sm = System.getSecurityManager();
|
|
||||||
+ if (sm != null) {
|
|
||||||
+ sm.checkPropertyAccess("user.dir");
|
|
||||||
+ }
|
|
||||||
+ return resolve(userDir, f.getPath());
|
|
||||||
}
|
|
||||||
|
|
||||||
// Caches for canonicalization results to improve startup performance.
|
|
||||||
diff --git a/jdk/src/windows/classes/java/io/WinNTFileSystem.java b/jdk/src/windows/classes/java/io/WinNTFileSystem.java
|
|
||||||
index caa47f80c..1844a662a 100644
|
|
||||||
--- a/jdk/src/windows/classes/java/io/WinNTFileSystem.java
|
|
||||||
+++ b/jdk/src/windows/classes/java/io/WinNTFileSystem.java
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/*
|
|
||||||
- * Copyright (c) 2001, 2022, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
+ * Copyright (c) 2001, 2018, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
||||||
*
|
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
|
||||||
@@ -40,6 +40,7 @@ class WinNTFileSystem extends FileSystem {
|
|
||||||
private final char slash;
|
|
||||||
private final char altSlash;
|
|
||||||
private final char semicolon;
|
|
||||||
+ private final String userDir;
|
|
||||||
|
|
||||||
// Whether to enable alternative data streams (ADS) by suppressing
|
|
||||||
// checking the path for invalid characters, in particular ":".
|
|
||||||
@@ -47,6 +48,8 @@ class WinNTFileSystem extends FileSystem {
|
|
||||||
semicolon = AccessController.doPrivileged(
|
|
||||||
new GetPropertyAction("path.separator")).charAt(0);
|
|
||||||
altSlash = (this.slash == '\\') ? '/' : '\\';
|
|
||||||
+ userDir = AccessController.doPrivileged(
|
|
||||||
+ new GetPropertyAction("user.dir"));
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean isSlash(char c) {
|
|
||||||
@@ -343,7 +346,11 @@ class WinNTFileSystem extends FileSystem {
|
|
||||||
private String getUserPath() {
|
|
||||||
/* For both compatibility and security,
|
|
||||||
we must look this up every time */
|
|
||||||
- return normalize(System.getProperty("user.dir"));
|
|
||||||
+ SecurityManager sm = System.getSecurityManager();
|
|
||||||
+ if (sm != null) {
|
|
||||||
+ sm.checkPropertyAccess("user.dir");
|
|
||||||
+ }
|
|
||||||
+ return normalize(userDir);
|
|
||||||
}
|
|
||||||
|
|
||||||
private String getDrive(String path) {
|
|
||||||
diff --git a/jdk/test/java/io/File/UserDirChangedTest.java b/jdk/test/java/io/File/UserDirChangedTest.java
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000..9eccb768e
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/jdk/test/java/io/File/UserDirChangedTest.java
|
|
||||||
@@ -0,0 +1,51 @@
|
|
||||||
+/*
|
|
||||||
+ * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
||||||
+ *
|
|
||||||
+ * This code is free software; you can redistribute it and/or modify it
|
|
||||||
+ * under the terms of the GNU General Public License version 2 only, as
|
|
||||||
+ * published by the Free Software Foundation.
|
|
||||||
+ *
|
|
||||||
+ * This code is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
||||||
+ * version 2 for more details (a copy is included in the LICENSE file that
|
|
||||||
+ * accompanied this code).
|
|
||||||
+ *
|
|
||||||
+ * You should have received a copy of the GNU General Public License version
|
|
||||||
+ * 2 along with this work; if not, write to the Free Software Foundation,
|
|
||||||
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
||||||
+ *
|
|
||||||
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
|
||||||
+ * or visit www.oracle.com if you need additional information or have any
|
|
||||||
+ * questions.
|
|
||||||
+ */
|
|
||||||
+
|
|
||||||
+/* @test
|
|
||||||
+ @bug 8194154
|
|
||||||
+ @summary Test changing property user.dir on impacting getCanonicalPath
|
|
||||||
+ @run main/othervm UserDirChangedTest
|
|
||||||
+ */
|
|
||||||
+
|
|
||||||
+import java.io.File;
|
|
||||||
+
|
|
||||||
+public class UserDirChangedTest {
|
|
||||||
+ public static void main(String[] args) throws Exception {
|
|
||||||
+ String keyUserDir = "user.dir";
|
|
||||||
+ String userDirNew = "/home/a/b/c/";
|
|
||||||
+ String fileName = "./a";
|
|
||||||
+
|
|
||||||
+ String userDir = System.getProperty(keyUserDir);
|
|
||||||
+ File file = new File(fileName);
|
|
||||||
+ String canFilePath = file.getCanonicalPath();
|
|
||||||
+
|
|
||||||
+ // now reset user.dir, this will cause crash on linux without bug 8194154 fixed.
|
|
||||||
+ System.setProperty(keyUserDir, userDirNew);
|
|
||||||
+ String newCanFilePath = file.getCanonicalPath();
|
|
||||||
+ System.out.format("%24s %48s%n", "Canonical Path = ", canFilePath);
|
|
||||||
+ System.out.format("%24s %48s%n", "new Canonical Path = ", newCanFilePath);
|
|
||||||
+ if (!canFilePath.equals(newCanFilePath)) {
|
|
||||||
+ throw new RuntimeException("Changing property user.dir should have no effect on getCanonicalPath");
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
--
|
|
||||||
2.19.0
|
|
||||||
|
|
||||||
68
8200332-Improve-GCM-counting.patch
Normal file
68
8200332-Improve-GCM-counting.patch
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
From 30883daeac796c877a765cedee52f27f51444203 Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Thu, 8 Sep 2022 10:22:32 +0800
|
||||||
|
Subject: 8200332: Improve GCM counting
|
||||||
|
|
||||||
|
Bug url: https://bugs.openjdk.org/browse/JDK-8200332
|
||||||
|
---
|
||||||
|
.../classes/com/sun/crypto/provider/GCTR.java | 31 ++++++++++++++++++-
|
||||||
|
1 file changed, 30 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/jdk/src/share/classes/com/sun/crypto/provider/GCTR.java b/jdk/src/share/classes/com/sun/crypto/provider/GCTR.java
|
||||||
|
index 6a394e448..1ab0f63db 100644
|
||||||
|
--- a/jdk/src/share/classes/com/sun/crypto/provider/GCTR.java
|
||||||
|
+++ b/jdk/src/share/classes/com/sun/crypto/provider/GCTR.java
|
||||||
|
@@ -29,6 +29,8 @@
|
||||||
|
|
||||||
|
package com.sun.crypto.provider;
|
||||||
|
|
||||||
|
+import java.nio.ByteBuffer;
|
||||||
|
+import java.nio.ByteOrder;
|
||||||
|
import javax.crypto.IllegalBlockSizeException;
|
||||||
|
import static com.sun.crypto.provider.AESConstants.AES_BLOCK_SIZE;
|
||||||
|
|
||||||
|
@@ -68,6 +70,15 @@ final class GCTR extends CounterMode {
|
||||||
|
return "GCTR";
|
||||||
|
}
|
||||||
|
|
||||||
|
+ // return the number of blocks until the lower 32 bits roll over
|
||||||
|
+ private long blocksUntilRollover() {
|
||||||
|
+ ByteBuffer buf = ByteBuffer.wrap(counter, counter.length - 4, 4);
|
||||||
|
+ buf.order(ByteOrder.BIG_ENDIAN);
|
||||||
|
+ long ctr32 = 0xFFFFFFFFL & buf.getInt();
|
||||||
|
+ long blocksLeft = (1L << 32) - ctr32;
|
||||||
|
+ return blocksLeft;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
// input must be multiples of 128-bit blocks when calling update
|
||||||
|
int update(byte[] in, int inOfs, int inLen, byte[] out, int outOfs) {
|
||||||
|
if (inLen - inOfs > in.length) {
|
||||||
|
@@ -80,7 +91,25 @@ final class GCTR extends CounterMode {
|
||||||
|
throw new RuntimeException("output buffer too small");
|
||||||
|
}
|
||||||
|
|
||||||
|
- return encrypt(in, inOfs, inLen, out, outOfs);
|
||||||
|
+ long blocksLeft = blocksUntilRollover();
|
||||||
|
+ int numOfCompleteBlocks = inLen / AES_BLOCK_SIZE;
|
||||||
|
+ if (numOfCompleteBlocks >= blocksLeft) {
|
||||||
|
+ // Counter Mode encryption cannot be used because counter will
|
||||||
|
+ // roll over incorrectly. Use GCM-specific code instead.
|
||||||
|
+ byte[] encryptedCntr = new byte[AES_BLOCK_SIZE];
|
||||||
|
+ for (int i = 0; i < numOfCompleteBlocks; i++) {
|
||||||
|
+ embeddedCipher.encryptBlock(counter, 0, encryptedCntr, 0);
|
||||||
|
+ for (int n = 0; n < AES_BLOCK_SIZE; n++) {
|
||||||
|
+ int index = (i * AES_BLOCK_SIZE + n);
|
||||||
|
+ out[outOfs + index] =
|
||||||
|
+ (byte) ((in[inOfs + index] ^ encryptedCntr[n]));
|
||||||
|
+ }
|
||||||
|
+ GaloisCounterMode.increment32(counter);
|
||||||
|
+ }
|
||||||
|
+ return inLen;
|
||||||
|
+ } else {
|
||||||
|
+ return encrypt(in, inOfs, inLen, out, outOfs);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
// input can be arbitrary size when calling doFinal
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
1394
8202951-Support-default-jsa.patch
Normal file
1394
8202951-Support-default-jsa.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -3,11 +3,6 @@ From: d30023828 <douyiwang@huawei.com>
|
|||||||
Date: Wed, 9 Feb 2022 18:32:05 +0800
|
Date: Wed, 9 Feb 2022 18:32:05 +0800
|
||||||
Subject: [PATCH 3/8] 8268819: SA: Remove libthread_db dependency on Linux
|
Subject: [PATCH 3/8] 8268819: SA: Remove libthread_db dependency on Linux
|
||||||
|
|
||||||
DTS/AR: DTS2022020914784
|
|
||||||
Summary:hotspot:SA: Remove libthread_db dependency on Linux
|
|
||||||
LLT:NA
|
|
||||||
Patch Type:backport
|
|
||||||
Bug url:https://bugs.openjdk.java.net/browse/JDK-8268819
|
|
||||||
---
|
---
|
||||||
.../agent/src/os/linux/LinuxDebuggerLocal.c | 3 +-
|
.../agent/src/os/linux/LinuxDebuggerLocal.c | 3 +-
|
||||||
hotspot/agent/src/os/linux/Makefile | 6 +-
|
hotspot/agent/src/os/linux/Makefile | 6 +-
|
||||||
@ -319,23 +314,16 @@ index 802e5b0bb..a8e0c2a5c 100644
|
|||||||
-
|
-
|
||||||
#endif /* _PROC_SERVICE_H_ */
|
#endif /* _PROC_SERVICE_H_ */
|
||||||
diff --git a/hotspot/agent/src/os/linux/ps_core.c b/hotspot/agent/src/os/linux/ps_core.c
|
diff --git a/hotspot/agent/src/os/linux/ps_core.c b/hotspot/agent/src/os/linux/ps_core.c
|
||||||
index b7fe4c095..6da43f195 100644
|
index 6fb8c940..5728bcc4 100644
|
||||||
--- a/hotspot/agent/src/os/linux/ps_core.c
|
--- a/hotspot/agent/src/os/linux/ps_core.c
|
||||||
+++ b/hotspot/agent/src/os/linux/ps_core.c
|
+++ b/hotspot/agent/src/os/linux/ps_core.c
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/*
|
|
||||||
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
+ * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
||||||
*
|
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
|
||||||
@@ -31,6 +31,7 @@
|
@@ -31,6 +31,7 @@
|
||||||
#include <elf.h>
|
#include <elf.h>
|
||||||
#include <link.h>
|
#include <link.h>
|
||||||
#include "libproc_impl.h"
|
#include "libproc_impl.h"
|
||||||
+#include "proc_service.h"
|
+#include "proc_service.h"
|
||||||
#include "salibelf.h"
|
#include "salibelf.h"
|
||||||
|
|
||||||
// This file has the libproc implementation to read core files.
|
// This file has the libproc implementation to read core files.
|
||||||
@@ -546,8 +547,7 @@ static bool core_handle_prstatus(struct ps_prochandle* ph, const char* buf, size
|
@@ -546,8 +547,7 @@ static bool core_handle_prstatus(struct ps_prochandle* ph, const char* buf, size
|
||||||
prstatus_t* prstat = (prstatus_t*) buf;
|
prstatus_t* prstat = (prstatus_t*) buf;
|
||||||
@ -343,9 +331,9 @@ index b7fe4c095..6da43f195 100644
|
|||||||
print_debug("got integer regset for lwp %d\n", prstat->pr_pid);
|
print_debug("got integer regset for lwp %d\n", prstat->pr_pid);
|
||||||
- // we set pthread_t to -1 for core dump
|
- // we set pthread_t to -1 for core dump
|
||||||
- if((newthr = add_thread_info(ph, (pthread_t) -1, prstat->pr_pid)) == NULL)
|
- if((newthr = add_thread_info(ph, (pthread_t) -1, prstat->pr_pid)) == NULL)
|
||||||
+ if((newthr = add_thread_info(ph, prstat->pr_pid)) == NULL)
|
+ if((newthr = add_thread_info(ph, prstat->pr_pid)) == NULL)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// copy regs
|
// copy regs
|
||||||
diff --git a/hotspot/agent/src/os/linux/ps_proc.c b/hotspot/agent/src/os/linux/ps_proc.c
|
diff --git a/hotspot/agent/src/os/linux/ps_proc.c b/hotspot/agent/src/os/linux/ps_proc.c
|
||||||
index c4d6a9ecc..748cc1397 100644
|
index c4d6a9ecc..748cc1397 100644
|
||||||
|
|||||||
237
8287109-Distrust-failed-with-CertificateExpired.patch
Normal file
237
8287109-Distrust-failed-with-CertificateExpired.patch
Normal file
@ -0,0 +1,237 @@
|
|||||||
|
From d2d3408154beb52370ee8784767375a7cc8d325d Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Wed, 21 Sep 2022 10:31:17 +0800
|
||||||
|
Subject: 8287109: Distrust.java failed with CertificateExpiredException
|
||||||
|
|
||||||
|
---
|
||||||
|
.../Symantec/Distrust.java | 26 +++++-
|
||||||
|
.../Symantec/appleistca2g1-chain.pem | 80 -------------------
|
||||||
|
.../Symantec/geotrustglobalca-chain.pem | 66 ---------------
|
||||||
|
3 files changed, 23 insertions(+), 149 deletions(-)
|
||||||
|
delete mode 100644 jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/appleistca2g1-chain.pem
|
||||||
|
delete mode 100644 jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/geotrustglobalca-chain.pem
|
||||||
|
|
||||||
|
diff --git a/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/Distrust.java b/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/Distrust.java
|
||||||
|
index d394f417..22266255 100644
|
||||||
|
--- a/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/Distrust.java
|
||||||
|
+++ b/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/Distrust.java
|
||||||
|
@@ -51,15 +51,14 @@ public class Distrust {
|
||||||
|
// Each of the roots have a test certificate chain stored in a file
|
||||||
|
// named "<root>-chain.pem".
|
||||||
|
private static String[] rootsToTest = new String[] {
|
||||||
|
- "geotrustglobalca", "geotrustprimarycag2", "geotrustprimarycag3",
|
||||||
|
+ "geotrustprimarycag2", "geotrustprimarycag3",
|
||||||
|
"geotrustuniversalca", "thawteprimaryrootca", "thawteprimaryrootcag2",
|
||||||
|
"thawteprimaryrootcag3", "verisignclass3g3ca", "verisignclass3g4ca",
|
||||||
|
"verisignclass3g5ca", "verisignuniversalrootca" };
|
||||||
|
|
||||||
|
// Each of the subCAs with a delayed distrust date have a test certificate
|
||||||
|
// chain stored in a file named "<subCA>-chain.pem".
|
||||||
|
- private static String[] subCAsToTest = new String[] {
|
||||||
|
- "appleistca2g1", "appleistca8g1" };
|
||||||
|
+ private static String[] subCAsToTest = new String[] {"appleistca8g1"};
|
||||||
|
|
||||||
|
// A date that is after the restrictions take affect
|
||||||
|
private static final Date APRIL_17_2019 =
|
||||||
|
@@ -177,6 +176,11 @@ public class Distrust {
|
||||||
|
throw new Exception("chain should be invalid");
|
||||||
|
}
|
||||||
|
} catch (CertificateException ce) {
|
||||||
|
+ // expired TLS certificates should not be treated as failure
|
||||||
|
+ if (expired(ce)) {
|
||||||
|
+ System.err.println("Test is N/A, chain is expired");
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
if (valid) {
|
||||||
|
throw new Exception("Unexpected exception, chain " +
|
||||||
|
"should be valid", ce);
|
||||||
|
@@ -184,6 +188,7 @@ public class Distrust {
|
||||||
|
if (ce instanceof ValidatorException) {
|
||||||
|
ValidatorException ve = (ValidatorException)ce;
|
||||||
|
if (ve.getErrorType() != ValidatorException.T_UNTRUSTED_CERT) {
|
||||||
|
+ ce.printStackTrace(System.err);
|
||||||
|
throw new Exception("Unexpected exception: " + ce);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
@@ -192,6 +197,21 @@ public class Distrust {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+ // check if a cause of exception is an expired cert
|
||||||
|
+ private static boolean expired(CertificateException ce) {
|
||||||
|
+ if (ce instanceof CertificateExpiredException) {
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+ Throwable t = ce.getCause();
|
||||||
|
+ while (t != null) {
|
||||||
|
+ if (t instanceof CertificateExpiredException) {
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+ t = t.getCause();
|
||||||
|
+ }
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
private static X509Certificate[] loadCertificateChain(String name)
|
||||||
|
throws Exception {
|
||||||
|
try (InputStream in = new FileInputStream(TEST_SRC + File.separator +
|
||||||
|
diff --git a/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/appleistca2g1-chain.pem b/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/appleistca2g1-chain.pem
|
||||||
|
deleted file mode 100644
|
||||||
|
index 0235631d..00000000
|
||||||
|
--- a/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/appleistca2g1-chain.pem
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,80 +0,0 @@
|
||||||
|
------BEGIN CERTIFICATE-----
|
||||||
|
-MIIGGzCCBQOgAwIBAgIITJltLCqcD0gwDQYJKoZIhvcNAQELBQAwYjEcMBoGA1UE
|
||||||
|
-AxMTQXBwbGUgSVNUIENBIDIgLSBHMTEgMB4GA1UECxMXQ2VydGlmaWNhdGlvbiBB
|
||||||
|
-dXRob3JpdHkxEzARBgNVBAoTCkFwcGxlIEluYy4xCzAJBgNVBAYTAlVTMB4XDTE5
|
||||||
|
-MDEwODIxMTcxNFoXDTIwMDgwODIxMjcwMFowgaoxSjBIBgNVBAMMQWFjdGl2ZS5n
|
||||||
|
-ZW90cnVzdC1nbG9iYWwtY2EudGVzdC1wYWdlcy5jZXJ0aWZpY2F0ZW1hbmFnZXIu
|
||||||
|
-YXBwbGUuY29tMSUwIwYDVQQLDBxtYW5hZ2VtZW50OmlkbXMuZ3JvdXAuODY0ODU5
|
||||||
|
-MRMwEQYDVQQKDApBcHBsZSBJbmMuMRMwEQYDVQQIDApDYWxpZm9ybmlhMQswCQYD
|
||||||
|
-VQQGEwJVUzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMCjFUrVHTEX
|
||||||
|
-0aVU6x9LiGa6oVr9blaCsMFrLicPQguc43Vs/pN+g4jzRXsTSMe9XefezBQb6tzZ
|
||||||
|
-SMRXVB4kWMr4K1BVgQDkXeyoh4KrXRkdEF9ZIJPNxwTmmYUOc5M6NOYwkLelYz+t
|
||||||
|
-7n1iNIGylbjwU4qwauElk2alFVqYTEPDLzwvqVDb9jMAJ8MPSDjfUlXW0XD9oXZM
|
||||||
|
-hC+8LU9JBgJ3YBdzRHa4WnrudUbWjspqaNfAYpVIX0cfCJKnMsKqaSKjS4pIRtWm
|
||||||
|
-L6NlCTCoIMyOh+wmbWPPX24H2D3+ump5FA35fRYbVznmosl5n1AK34S9tD4XZ7lO
|
||||||
|
-WZKfaFi1liMCAwEAAaOCAoowggKGMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAU
|
||||||
|
-2HqURHyQcJAWnt0XnAFEA4bWKikwfgYIKwYBBQUHAQEEcjBwMDQGCCsGAQUFBzAC
|
||||||
|
-hihodHRwOi8vY2VydHMuYXBwbGUuY29tL2FwcGxlaXN0Y2EyZzEuZGVyMDgGCCsG
|
||||||
|
-AQUFBzABhixodHRwOi8vb2NzcC5hcHBsZS5jb20vb2NzcDAzLWFwcGxlaXN0Y2Ey
|
||||||
|
-ZzEwMTBMBgNVHREERTBDgkFhY3RpdmUuZ2VvdHJ1c3QtZ2xvYmFsLWNhLnRlc3Qt
|
||||||
|
-cGFnZXMuY2VydGlmaWNhdGVtYW5hZ2VyLmFwcGxlLmNvbTCB/wYDVR0gBIH3MIH0
|
||||||
|
-MIHxBgoqhkiG92NkBQsEMIHiMIGkBggrBgEFBQcCAjCBlwyBlFJlbGlhbmNlIG9u
|
||||||
|
-IHRoaXMgY2VydGlmaWNhdGUgYnkgYW55IHBhcnR5IGFzc3VtZXMgYWNjZXB0YW5j
|
||||||
|
-ZSBvZiBhbnkgYXBwbGljYWJsZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2Ug
|
||||||
|
-YW5kL29yIGNlcnRpZmljYXRpb24gcHJhY3RpY2Ugc3RhdGVtZW50cy4wOQYIKwYB
|
||||||
|
-BQUHAgEWLWh0dHA6Ly93d3cuYXBwbGUuY29tL2NlcnRpZmljYXRlYXV0aG9yaXR5
|
||||||
|
-L3JwYTAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwNwYDVR0fBDAwLjAs
|
||||||
|
-oCqgKIYmaHR0cDovL2NybC5hcHBsZS5jb20vYXBwbGVpc3RjYTJnMS5jcmwwHQYD
|
||||||
|
-VR0OBBYEFP0qkmFJhArI0MsfW0V+/wY9x4GSMA4GA1UdDwEB/wQEAwIFoDANBgkq
|
||||||
|
-hkiG9w0BAQsFAAOCAQEATjT8M0bIq+mFc8k5cd4KDjCMBjYl/l3/8zKlWYGP+nl1
|
||||||
|
-KRogXcGRa3LcfpdJcqgMrx8e9Xohduvl8MBzwv671rYkppzZdsmZdLVorAdbL5GL
|
||||||
|
-suhTjAS5yL3NBWNMRpeOgFsVr7YtPDEvo3CFsnzjg7THe0S6Y35oYukJtUzGUvSY
|
||||||
|
-kC3ApBTdjj0vAeow+dbt+AHKnQiEnon4ToSFmtnkru08Uxe7uyHCQ2sLUg0EPYc9
|
||||||
|
-t9I8lviaHfK/mQoCzlme2O/H5Rher8dXCv8hVT1NKbsi28EpgpqcTLS+hn/Edc/q
|
||||||
|
-4dPDoO1Ozs+ixRzFeMpA+JrnAyARb6qbSrAPBgtIbQ==
|
||||||
|
------END CERTIFICATE-----
|
||||||
|
------BEGIN CERTIFICATE-----
|
||||||
|
-MIIEQDCCAyigAwIBAgIDAjp0MA0GCSqGSIb3DQEBCwUAMEIxCzAJBgNVBAYTAlVT
|
||||||
|
-MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
|
||||||
|
-YWwgQ0EwHhcNMTQwNjE2MTU0MjAyWhcNMjIwNTIwMTU0MjAyWjBiMRwwGgYDVQQD
|
||||||
|
-ExNBcHBsZSBJU1QgQ0EgMiAtIEcxMSAwHgYDVQQLExdDZXJ0aWZpY2F0aW9uIEF1
|
||||||
|
-dGhvcml0eTETMBEGA1UEChMKQXBwbGUgSW5jLjELMAkGA1UEBhMCVVMwggEiMA0G
|
||||||
|
-CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDQk6EdR0MgFrILa+vD1bTox5jN896/
|
||||||
|
-6E3p4zaAB/xFG2p8RYauVtOkCX9hDWtdflJrfbTIOcT0Zzr3g84Zb4YvfkV+Rxxn
|
||||||
|
-UsqVBV3iNlGFwNRngDVvFd0+/R3S/Y80UNjsdiq+49Pa5P3I6ygClhGXF2Ec6cRZ
|
||||||
|
-O0LcMtEJHdqm0UOG/16yvIzPZtsBiwKulEjzOI/96jKoCOyGl1GUJD5JSZZT6Hmh
|
||||||
|
-QIHpBbuTlVH84/18EUv3ngizFUkVB/nRN6CbSzL2tcTcatH8Cu324MUpoKiLcf4N
|
||||||
|
-krz+VHAYCm3H7Qz7yS0Gw4yF/MuGXNY2jhKLCX/7GRo41fCUMHoPpozzAgMBAAGj
|
||||||
|
-ggEdMIIBGTAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1luMrMTjAdBgNVHQ4E
|
||||||
|
-FgQU2HqURHyQcJAWnt0XnAFEA4bWKikwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNV
|
||||||
|
-HQ8BAf8EBAMCAQYwNQYDVR0fBC4wLDAqoCigJoYkaHR0cDovL2cuc3ltY2IuY29t
|
||||||
|
-L2NybHMvZ3RnbG9iYWwuY3JsMC4GCCsGAQUFBwEBBCIwIDAeBggrBgEFBQcwAYYS
|
||||||
|
-aHR0cDovL2cuc3ltY2QuY29tMEwGA1UdIARFMEMwQQYKYIZIAYb4RQEHNjAzMDEG
|
||||||
|
-CCsGAQUFBwIBFiVodHRwOi8vd3d3Lmdlb3RydXN0LmNvbS9yZXNvdXJjZXMvY3Bz
|
||||||
|
-MA0GCSqGSIb3DQEBCwUAA4IBAQAWR3NvhaJi4ecqdruJlUIml7xKrKxwUzo/MYM9
|
||||||
|
-PByrmuKxXRx2GqA8DHJXvtOeUODImdZY1wLqzg0pVHzN9cLGkClVo28UqAtCDTqY
|
||||||
|
-bQZ4nvBqox0CCqIopI3CgUY+bWfa3j/+hQ5CKhLetbf7uBunlux3n+zUU5V6/wf0
|
||||||
|
-8goUwFFSsdaOUAsamVy8C8m97e34XsFW201+I6QRoSzUGwWa5BtS9nw4mQVLunKN
|
||||||
|
-QolgBGYq9P1o12v3mUEo1mwkq+YlUy7Igpnioo8jvjCDsSeL+mh/AUnoxphrEC6Y
|
||||||
|
-XorXykuxx8lYmtA225aV7LaB5PLNbxt5h0wQPInkTfpU3Kqm
|
||||||
|
------END CERTIFICATE-----
|
||||||
|
------BEGIN CERTIFICATE-----
|
||||||
|
-MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT
|
||||||
|
-MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
|
||||||
|
-YWwgQ0EwHhcNMDIwNTIxMDQwMDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQG
|
||||||
|
-EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UEAxMSR2VvVHJ1c3Qg
|
||||||
|
-R2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2swYYzD9
|
||||||
|
-9BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjoBbdq
|
||||||
|
-fnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDv
|
||||||
|
-iS2Aelet8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU
|
||||||
|
-1XupGc1V3sjs0l44U+VcT4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+
|
||||||
|
-bw8HHa8sHo9gOeL6NlMTOdReJivbPagUvTLrGAMoUgRx5aszPeE4uwc2hGKceeoW
|
||||||
|
-MPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTA
|
||||||
|
-ephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1l
|
||||||
|
-uMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKIn
|
||||||
|
-Z57QzxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfS
|
||||||
|
-tQWVYrmm3ok9Nns4d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcF
|
||||||
|
-PseKUgzbFbS9bZvlxrFUaKnjaZC2mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Un
|
||||||
|
-hw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6pXE0zX5IJL4hmXXeXxx12E6nV
|
||||||
|
-5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvmMw==
|
||||||
|
------END CERTIFICATE-----
|
||||||
|
diff --git a/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/geotrustglobalca-chain.pem b/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/geotrustglobalca-chain.pem
|
||||||
|
deleted file mode 100644
|
||||||
|
index 3249716b..00000000
|
||||||
|
--- a/jdk/test/sun/security/ssl/X509TrustManagerImpl/Symantec/geotrustglobalca-chain.pem
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,66 +0,0 @@
|
||||||
|
------BEGIN CERTIFICATE-----
|
||||||
|
-MIIHBjCCBe6gAwIBAgIQanINWwJAuap0V7lFjnfUwTANBgkqhkiG9w0BAQsFADBE
|
||||||
|
-MQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMU
|
||||||
|
-R2VvVHJ1c3QgU1NMIENBIC0gRzMwHhcNMTcwNTAzMDAwMDAwWhcNMjAwNTAyMjM1
|
||||||
|
-OTU5WjCBkTELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExFjAUBgNV
|
||||||
|
-BAcMDU1vdW50YWluIFZpZXcxFzAVBgNVBAoMDkdlb1RydXN0LCBJbmMuMRgwFgYD
|
||||||
|
-VQQLDA9Sb290IDEwIC0gVkFMSUQxIjAgBgNVBAMMGXZhbGlkLXJvb3QxMC5nZW90
|
||||||
|
-cnVzdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDTegUYhAh0
|
||||||
|
-P7aF6jzk8dit4Vzddo3hM+J7Eak/+N1sqVUS2HpNd7VO50FrbEWKIRusv7QNtlpY
|
||||||
|
-1Cgrla8M4RAhCB0wkkHXZ1Evz6E1AEFQqNSjyuRQxeEXl+xCL+MF+yAMhDRnHh+E
|
||||||
|
-eSJ3ie0T66saOyaLM9fPpr3xomAQ/IRlP1atJ/Z8XbPo25HuxwzxiWFW+RjwVIfI
|
||||||
|
-gxHz4Okwc1uImDUIDlEu9Uaqqb4jHhxU1EkKMmgEncpqwCROcZMujUkogfB49Z7+
|
||||||
|
-K17r6ARIrUuxqfNPrPwe+O88WgIeDSWffPM67UlvtomZOwuTNdv9OoCX1wUCLS7m
|
||||||
|
-/gZ3rqqqeJvfAgMBAAGjggOkMIIDoDAkBgNVHREEHTAbghl2YWxpZC1yb290MTAu
|
||||||
|
-Z2VvdHJ1c3QuY29tMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgWgMCsGA1UdHwQk
|
||||||
|
-MCIwIKAeoByGGmh0dHA6Ly9nbi5zeW1jYi5jb20vZ24uY3JsMIGdBgNVHSAEgZUw
|
||||||
|
-gZIwgY8GBmeBDAECAjCBhDA/BggrBgEFBQcCARYzaHR0cHM6Ly93d3cuZ2VvdHJ1
|
||||||
|
-c3QuY29tL3Jlc291cmNlcy9yZXBvc2l0b3J5L2xlZ2FsMEEGCCsGAQUFBwICMDUM
|
||||||
|
-M2h0dHBzOi8vd3d3Lmdlb3RydXN0LmNvbS9yZXNvdXJjZXMvcmVwb3NpdG9yeS9s
|
||||||
|
-ZWdhbDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAU
|
||||||
|
-0m/3lvSFP3I8MH0j2oV4m6N8WnwwVwYIKwYBBQUHAQEESzBJMB8GCCsGAQUFBzAB
|
||||||
|
-hhNodHRwOi8vZ24uc3ltY2QuY29tMCYGCCsGAQUFBzAChhpodHRwOi8vZ24uc3lt
|
||||||
|
-Y2IuY29tL2duLmNydDCCAfUGCisGAQQB1nkCBAIEggHlBIIB4QHfAHUA3esdK3oN
|
||||||
|
-T6Ygi4GtgWhwfi6OnQHVXIiNPRHEzbbsvswAAAFbz9h5vQAABAMARjBEAiAx/C0U
|
||||||
|
-5NdHxK4v2oHnstYksb1Vny8PcQkSvgpx9PsZEwIgNTOU70Zc5szG23xdbvtoH5lN
|
||||||
|
-SAoVswiF5gFQS5MGu1sAdgCkuQmQtBhYFIe7E6LMZ3AKPDWYBPkb37jjd80OyA3c
|
||||||
|
-EAAAAVvP2HnZAAAEAwBHMEUCIFGjB8r2H0VDwTUE/aY/Mv+M97sqAvEP1doOcHpg
|
||||||
|
-0qyfAiEArw/S2F7OEcmKGUY1WRBuApfAx5d7hzrTSV/jZv95qJwAdgDuS723dc5g
|
||||||
|
-uuFCaR+r4Z5mow9+X7By2IMAxHuJeqj9ywAAAVvP2HoDAAAEAwBHMEUCIQCH6MFZ
|
||||||
|
-tZF3Cqukt3/69fkU0Y5ePXXx8+xkOXRsIG3EGgIgSmCBWrnmPiiGA3x5QP8I8m4r
|
||||||
|
-Uee0y7s4NQNwjMgHrjwAdgC8eOHfxfY8aEZJM02hD6FfCXlpIAnAgbTz9pF/Ptm4
|
||||||
|
-pQAAAVvP2HqcAAAEAwBHMEUCIA8e2kAVYYuQCtn4PqK98BuHnLm9rC40DboFLCle
|
||||||
|
-SmQsAiEApbCJR05hr9VkNWmjaaUUGGZdVyUu9XX504LHVWyXZDUwDQYJKoZIhvcN
|
||||||
|
-AQELBQADggEBAEtfBfZ2y5uTohvW3h00Kcuop6Nq7Y59GU3MeizPKtx48DB8qHyd
|
||||||
|
-y5bLFwXzsGA1WkwpKzPbROsTGcAAXJHh03bj24AemUr/J/eQcjkfSoNBdHDpiSsk
|
||||||
|
-VZkQK2fGJDiYJ/r9mxKZcgd2pyN3l2OtVtNMv2dnFGF35UkkeqO3jqImwbypAmRX
|
||||||
|
-HdQV9dvW2YDRjzkebNNey6UwY9+YTSzr4da2hcaMHrj588Eqa4DDgNcY9QnE2RzN
|
||||||
|
-giArA+4RlM4AZ3jC2A756I67hrlvH+lhumHLp06hGfMiQJF1aaauFVSa36HKc3C/
|
||||||
|
-ty+sLdJbemEJLAr8uNXggFD+U8TKw1S4LSw=
|
||||||
|
------END CERTIFICATE-----
|
||||||
|
------BEGIN CERTIFICATE-----
|
||||||
|
-MIIETzCCAzegAwIBAgIDAjpvMA0GCSqGSIb3DQEBCwUAMEIxCzAJBgNVBAYTAlVT
|
||||||
|
-MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
|
||||||
|
-YWwgQ0EwHhcNMTMxMTA1MjEzNjUwWhcNMjIwNTIwMjEzNjUwWjBEMQswCQYDVQQG
|
||||||
|
-EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3Qg
|
||||||
|
-U1NMIENBIC0gRzMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDjvn4K
|
||||||
|
-hqPPa209K6GXrUkkTdd3uTR5CKWeop7eRxKSPX7qGYax6E89X/fQp3eaWx8KA7UZ
|
||||||
|
-U9ulIZRpY51qTJEMEEe+EfpshiW3qwRoQjgJZfAU2hme+msLq2LvjafvY3AjqK+B
|
||||||
|
-89FuiGdT7BKkKXWKp/JXPaKDmJfyCn3U50NuMHhiIllZuHEnRaoPZsZVP/oyFysx
|
||||||
|
-j0ag+mkUfJ2fWuLrM04QprPtd2PYw5703d95mnrU7t7dmszDt6ldzBE6B7tvl6QB
|
||||||
|
-I0eVH6N3+liSxsfQvc+TGEK3fveeZerVO8rtrMVwof7UEJrwEgRErBpbeFBFV0xv
|
||||||
|
-vYDLgVwts7x2oR5lAgMBAAGjggFKMIIBRjAfBgNVHSMEGDAWgBTAephojYn7qwVk
|
||||||
|
-DBF9qn1luMrMTjAdBgNVHQ4EFgQU0m/3lvSFP3I8MH0j2oV4m6N8WnwwEgYDVR0T
|
||||||
|
-AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAQYwNgYDVR0fBC8wLTAroCmgJ4Yl
|
||||||
|
-aHR0cDovL2cxLnN5bWNiLmNvbS9jcmxzL2d0Z2xvYmFsLmNybDAvBggrBgEFBQcB
|
||||||
|
-AQQjMCEwHwYIKwYBBQUHMAGGE2h0dHA6Ly9nMi5zeW1jYi5jb20wTAYDVR0gBEUw
|
||||||
|
-QzBBBgpghkgBhvhFAQc2MDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly93d3cuZ2VvdHJ1
|
||||||
|
-c3QuY29tL3Jlc291cmNlcy9jcHMwKQYDVR0RBCIwIKQeMBwxGjAYBgNVBAMTEVN5
|
||||||
|
-bWFudGVjUEtJLTEtNTM5MA0GCSqGSIb3DQEBCwUAA4IBAQCg1Pcs+3QLf2TxzUNq
|
||||||
|
-n2JTHAJ8mJCi7k9o1CAacxI+d7NQ63K87oi+fxfqd4+DYZVPhKHLMk9sIb7SaZZ9
|
||||||
|
-Y73cK6gf0BOEcP72NZWJ+aZ3sEbIu7cT9clgadZM/tKO79NgwYCA4ef7i28heUrg
|
||||||
|
-3Kkbwbf7w0lZXLV3B0TUl/xJAIlvBk4BcBmsLxHA4uYPL4ZLjXvDuacu9PGsFj45
|
||||||
|
-SVGeF0tPEDpbpaiSb/361gsDTUdWVxnzy2v189bPsPX1oxHSIFMTNDcFLENaY9+N
|
||||||
|
-QNaFHlHpURceA1bJ8TCt55sRornQMYGbaLHZ6PPmlH7HrhMvh+3QJbBo+d4IWvMp
|
||||||
|
-zNSS
|
||||||
|
------END CERTIFICATE-----
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
@ -0,0 +1,145 @@
|
|||||||
|
diff --git a/hotspot/src/share/vm/opto/stringopts.cpp b/hotspot/src/share/vm/opto/stringopts.cpp
|
||||||
|
index d92a3d7a3..2d11b2257 100644
|
||||||
|
--- a/hotspot/src/share/vm/opto/stringopts.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/opto/stringopts.cpp
|
||||||
|
@@ -968,6 +968,21 @@ bool StringConcat::validate_control_flow() {
|
||||||
|
fail = true;
|
||||||
|
break;
|
||||||
|
} else if (ptr->is_Proj() && ptr->in(0)->is_Initialize()) {
|
||||||
|
+ // Check for side effect between Initialize and the constructor
|
||||||
|
+ for (SimpleDUIterator iter(ptr); iter.has_next(); iter.next()) {
|
||||||
|
+ Node* use = iter.get();
|
||||||
|
+ if (!use->is_CFG() && !use->is_CheckCastPP() && !use->is_Load()) {
|
||||||
|
+#ifndef PRODUCT
|
||||||
|
+ if (PrintOptimizeStringConcat) {
|
||||||
|
+ tty->print_cr("unexpected control use of Initialize");
|
||||||
|
+ ptr->in(0)->dump(); // Initialize node
|
||||||
|
+ use->dump(1);
|
||||||
|
+ }
|
||||||
|
+#endif
|
||||||
|
+ fail = true;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
ptr = ptr->in(0)->in(0);
|
||||||
|
} else if (ptr->is_Region()) {
|
||||||
|
Node* copy = ptr->as_Region()->is_copy();
|
||||||
|
diff --git a/hotspot/test/compiler/stringopts/SideEffectBeforeConstructor.jasm b/hotspot/test/compiler/stringopts/SideEffectBeforeConstructor.jasm
|
||||||
|
new file mode 100644
|
||||||
|
index 000000000..cbc6d754b
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/hotspot/test/compiler/stringopts/SideEffectBeforeConstructor.jasm
|
||||||
|
@@ -0,0 +1,58 @@
|
||||||
|
+/*
|
||||||
|
+ * Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
+ *
|
||||||
|
+ * This code is free software; you can redistribute it and/or modify it
|
||||||
|
+ * under the terms of the GNU General Public License version 2 only, as
|
||||||
|
+ * published by the Free Software Foundation.
|
||||||
|
+ *
|
||||||
|
+ * This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
+ * version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
+ * accompanied this code).
|
||||||
|
+ *
|
||||||
|
+ * You should have received a copy of the GNU General Public License version
|
||||||
|
+ * 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
+ *
|
||||||
|
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
+ * or visit www.oracle.com if you need additional information or have any
|
||||||
|
+ * questions.
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+super public class compiler/stringopts/SideEffectBeforeConstructor
|
||||||
|
+ version 51:0
|
||||||
|
+{
|
||||||
|
+ public static Field result:I;
|
||||||
|
+
|
||||||
|
+ static Method "<clinit>":"()V"
|
||||||
|
+ stack 2 locals 0
|
||||||
|
+ {
|
||||||
|
+ iconst_0;
|
||||||
|
+ putstatic Field result:"I";
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+ public Method "<init>":"()V"
|
||||||
|
+ stack 1 locals 1
|
||||||
|
+ {
|
||||||
|
+ aload_0;
|
||||||
|
+ invokespecial Method java/lang/Object."<init>":"()V";
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ public static Method test:"(Ljava/lang/String;)V"
|
||||||
|
+ stack 4 locals 1
|
||||||
|
+ {
|
||||||
|
+ new class java/lang/StringBuffer;
|
||||||
|
+ dup;
|
||||||
|
+ getstatic Field result:"I";
|
||||||
|
+ iconst_1;
|
||||||
|
+ iadd;
|
||||||
|
+ putstatic Field result:"I";
|
||||||
|
+ aload_0;
|
||||||
|
+ invokespecial Method java/lang/StringBuffer."<init>":"(Ljava/lang/String;)V";
|
||||||
|
+ invokevirtual Method java/lang/StringBuffer.toString:"()Ljava/lang/String;";
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
diff --git a/hotspot/test/compiler/stringopts/TestSideEffectBeforeConstructor.java b/hotspot/test/compiler/stringopts/TestSideEffectBeforeConstructor.java
|
||||||
|
new file mode 100644
|
||||||
|
index 000000000..86c5eca1d
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/hotspot/test/compiler/stringopts/TestSideEffectBeforeConstructor.java
|
||||||
|
@@ -0,0 +1,49 @@
|
||||||
|
+/*
|
||||||
|
+ * Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
+ *
|
||||||
|
+ * This code is free software; you can redistribute it and/or modify it
|
||||||
|
+ * under the terms of the GNU General Public License version 2 only, as
|
||||||
|
+ * published by the Free Software Foundation.
|
||||||
|
+ *
|
||||||
|
+ * This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
+ * version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
+ * accompanied this code).
|
||||||
|
+ *
|
||||||
|
+ * You should have received a copy of the GNU General Public License version
|
||||||
|
+ * 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
+ *
|
||||||
|
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
+ * or visit www.oracle.com if you need additional information or have any
|
||||||
|
+ * questions.
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+/*
|
||||||
|
+ * @test
|
||||||
|
+ * @bug 8290705
|
||||||
|
+ * @summary Test correctness of the string concatenation optimization with
|
||||||
|
+ * a store between StringBuffer allocation and constructor invocation.
|
||||||
|
+ * @compile SideEffectBeforeConstructor.jasm
|
||||||
|
+ * @run main/othervm -Xbatch compiler.stringopts.TestSideEffectBeforeConstructor
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+package compiler.stringopts;
|
||||||
|
+
|
||||||
|
+public class TestSideEffectBeforeConstructor {
|
||||||
|
+
|
||||||
|
+ public static void main(String[] args) {
|
||||||
|
+ for (int i = 0; i < 100_000; ++i) {
|
||||||
|
+ try {
|
||||||
|
+ SideEffectBeforeConstructor.test(null);
|
||||||
|
+ } catch (NullPointerException npe) {
|
||||||
|
+ // Expected
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ if (SideEffectBeforeConstructor.result != 100_000) {
|
||||||
|
+ throw new RuntimeException("Unexpected result: " + SideEffectBeforeConstructor.result);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
8657
Dynamic-CDS-Archive.patch
Normal file
8657
Dynamic-CDS-Archive.patch
Normal file
File diff suppressed because it is too large
Load Diff
149
Improve_AlgorithmConstraints_checkAlgorithm_performance.patch
Normal file
149
Improve_AlgorithmConstraints_checkAlgorithm_performance.patch
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
From 4e520a51acbb192a0df844fcca247998d7fb8854 Mon Sep 17 00:00:00 2001
|
||||||
|
From: wangkun <wangkun49@huawei.com>
|
||||||
|
Date: Thu, 28 Jul 2022 17:19:32 +0800
|
||||||
|
Subject: [PATCH 2/3] add
|
||||||
|
Improve-AlgorithmConstraints-checkAlgorithm-performa.patch
|
||||||
|
|
||||||
|
---
|
||||||
|
.../util/AbstractAlgorithmConstraints.java | 30 +++++++------------
|
||||||
|
.../util/DisabledAlgorithmConstraints.java | 20 +++++++++----
|
||||||
|
.../util/LegacyAlgorithmConstraints.java | 12 ++++++--
|
||||||
|
3 files changed, 35 insertions(+), 27 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/jdk/src/share/classes/sun/security/util/AbstractAlgorithmConstraints.java b/jdk/src/share/classes/sun/security/util/AbstractAlgorithmConstraints.java
|
||||||
|
index 944958de..5c760292 100644
|
||||||
|
--- a/jdk/src/share/classes/sun/security/util/AbstractAlgorithmConstraints.java
|
||||||
|
+++ b/jdk/src/share/classes/sun/security/util/AbstractAlgorithmConstraints.java
|
||||||
|
@@ -77,34 +77,26 @@ public abstract class AbstractAlgorithmConstraints
|
||||||
|
return new ArrayList<>(Arrays.asList(algorithmsInProperty));
|
||||||
|
}
|
||||||
|
|
||||||
|
- static boolean checkAlgorithm(List<String> algorithms, String algorithm,
|
||||||
|
+ static boolean checkAlgorithm(Set<String> algorithms, String algorithm,
|
||||||
|
AlgorithmDecomposer decomposer) {
|
||||||
|
if (algorithm == null || algorithm.length() == 0) {
|
||||||
|
throw new IllegalArgumentException("No algorithm name specified");
|
||||||
|
}
|
||||||
|
|
||||||
|
Set<String> elements = null;
|
||||||
|
- for (String item : algorithms) {
|
||||||
|
- if (item == null || item.isEmpty()) {
|
||||||
|
- continue;
|
||||||
|
- }
|
||||||
|
+ if (algorithms.contains(algorithm.toLowerCase())) {
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
|
||||||
|
- // check the full name
|
||||||
|
- if (item.equalsIgnoreCase(algorithm)) {
|
||||||
|
+ // decompose the algorithm into sub-elements
|
||||||
|
+ if (elements == null) {
|
||||||
|
+ elements = decomposer.decompose(algorithm);
|
||||||
|
+ }
|
||||||
|
+ // check the element of the elements
|
||||||
|
+ for (String element : elements) {
|
||||||
|
+ if (algorithms.contains(element.toLowerCase())) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- // decompose the algorithm into sub-elements
|
||||||
|
- if (elements == null) {
|
||||||
|
- elements = decomposer.decompose(algorithm);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- // check the items of the algorithm
|
||||||
|
- for (String element : elements) {
|
||||||
|
- if (item.equalsIgnoreCase(element)) {
|
||||||
|
- return false;
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
diff --git a/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java b/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java
|
||||||
|
index 51e62563..6ff26bf2 100644
|
||||||
|
--- a/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java
|
||||||
|
+++ b/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java
|
||||||
|
@@ -96,7 +96,7 @@ public class DisabledAlgorithmConstraints extends AbstractAlgorithmConstraints {
|
||||||
|
new DisabledAlgorithmConstraints(PROPERTY_JAR_DISABLED_ALGS);
|
||||||
|
}
|
||||||
|
|
||||||
|
- private final List<String> disabledAlgorithms;
|
||||||
|
+ private final Set<String> disabledAlgorithms;
|
||||||
|
private final Constraints algorithmConstraints;
|
||||||
|
|
||||||
|
public static DisabledAlgorithmConstraints certPathConstraints() {
|
||||||
|
@@ -128,11 +128,11 @@ public class DisabledAlgorithmConstraints extends AbstractAlgorithmConstraints {
|
||||||
|
public DisabledAlgorithmConstraints(String propertyName,
|
||||||
|
AlgorithmDecomposer decomposer) {
|
||||||
|
super(decomposer);
|
||||||
|
- disabledAlgorithms = getAlgorithms(propertyName);
|
||||||
|
+ List<String> disabledAlgorithmsList = getAlgorithms(propertyName);
|
||||||
|
|
||||||
|
// Check for alias
|
||||||
|
int ecindex = -1, i = 0;
|
||||||
|
- for (String s : disabledAlgorithms) {
|
||||||
|
+ for (String s : disabledAlgorithmsList) {
|
||||||
|
if (s.regionMatches(true, 0,"include ", 0, 8)) {
|
||||||
|
if (s.regionMatches(true, 8, PROPERTY_DISABLED_EC_CURVES, 0,
|
||||||
|
PROPERTY_DISABLED_EC_CURVES.length())) {
|
||||||
|
@@ -143,11 +143,19 @@ public class DisabledAlgorithmConstraints extends AbstractAlgorithmConstraints {
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
if (ecindex > -1) {
|
||||||
|
- disabledAlgorithms.remove(ecindex);
|
||||||
|
- disabledAlgorithms.addAll(ecindex,
|
||||||
|
+ disabledAlgorithmsList.remove(ecindex);
|
||||||
|
+ disabledAlgorithmsList.addAll(ecindex,
|
||||||
|
getAlgorithms(PROPERTY_DISABLED_EC_CURVES));
|
||||||
|
}
|
||||||
|
- algorithmConstraints = new Constraints(propertyName, disabledAlgorithms);
|
||||||
|
+ algorithmConstraints = new Constraints(propertyName, disabledAlgorithmsList);
|
||||||
|
+
|
||||||
|
+ disabledAlgorithms = new HashSet<String>();
|
||||||
|
+ for (String algorithm : disabledAlgorithmsList) {
|
||||||
|
+ if (algorithm == null || algorithm.isEmpty()) {
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+ disabledAlgorithms.add(algorithm.toLowerCase());
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
diff --git a/jdk/src/share/classes/sun/security/util/LegacyAlgorithmConstraints.java b/jdk/src/share/classes/sun/security/util/LegacyAlgorithmConstraints.java
|
||||||
|
index 4e7502fb..01d0447a 100644
|
||||||
|
--- a/jdk/src/share/classes/sun/security/util/LegacyAlgorithmConstraints.java
|
||||||
|
+++ b/jdk/src/share/classes/sun/security/util/LegacyAlgorithmConstraints.java
|
||||||
|
@@ -28,6 +28,7 @@ package sun.security.util;
|
||||||
|
import java.security.AlgorithmParameters;
|
||||||
|
import java.security.CryptoPrimitive;
|
||||||
|
import java.security.Key;
|
||||||
|
+import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
@@ -40,12 +41,19 @@ public class LegacyAlgorithmConstraints extends AbstractAlgorithmConstraints {
|
||||||
|
public final static String PROPERTY_TLS_LEGACY_ALGS =
|
||||||
|
"jdk.tls.legacyAlgorithms";
|
||||||
|
|
||||||
|
- private final List<String> legacyAlgorithms;
|
||||||
|
+ private final Set<String> legacyAlgorithms;
|
||||||
|
|
||||||
|
public LegacyAlgorithmConstraints(String propertyName,
|
||||||
|
AlgorithmDecomposer decomposer) {
|
||||||
|
super(decomposer);
|
||||||
|
- legacyAlgorithms = getAlgorithms(propertyName);
|
||||||
|
+ List<String> legacyAlgorithmsList = getAlgorithms(propertyName);
|
||||||
|
+ legacyAlgorithms = new HashSet<String>();
|
||||||
|
+ for (String algorithm : legacyAlgorithmsList) {
|
||||||
|
+ if (algorithm == null || algorithm.isEmpty()) {
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+ legacyAlgorithms.add(algorithm.toLowerCase());
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
529
The-code-style-is-fixed-and-test-cases-are-added.patch
Normal file
529
The-code-style-is-fixed-and-test-cases-are-added.patch
Normal file
@ -0,0 +1,529 @@
|
|||||||
|
From 0a877e963eeb55b98dcd0194ac44b4f010d382eb Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Wed, 21 Sep 2022 09:54:56 +0800
|
||||||
|
Subject: The code style is fixed and test cases are added
|
||||||
|
|
||||||
|
---
|
||||||
|
hotspot/src/share/vm/cds/archiveBuilder.hpp | 1 -
|
||||||
|
hotspot/src/share/vm/cds/archiveUtils.hpp | 1 -
|
||||||
|
hotspot/src/share/vm/cds/dynamicArchive.hpp | 1 -
|
||||||
|
.../share/vm/classfile/systemDictionary.cpp | 2 +-
|
||||||
|
.../vm/classfile/systemDictionaryShared.hpp | 1 +
|
||||||
|
.../shared/parGCAllocBuffer.cpp | 6 +-
|
||||||
|
hotspot/src/share/vm/memory/filemap.cpp | 7 +-
|
||||||
|
hotspot/src/share/vm/memory/filemap.hpp | 2 +-
|
||||||
|
.../src/share/vm/memory/metaspaceClosure.cpp | 25 +
|
||||||
|
.../src/share/vm/memory/metaspaceClosure.hpp | 25 +-
|
||||||
|
hotspot/src/share/vm/oops/cpCache.cpp | 1 -
|
||||||
|
hotspot/src/share/vm/oops/instanceKlass.cpp | 4 -
|
||||||
|
hotspot/test/runtime/6929067/Test6929067.sh | 2 +-
|
||||||
|
.../runtime/InitialThreadOverflow/testme.sh | 2 +-
|
||||||
|
hotspot/test/runtime/Thread/StopAtExit.java | 119 ++++
|
||||||
|
jdk/make/profile-rtjar-includes.txt | 7 +-
|
||||||
|
.../classes/java/io/ObjectInputStream.java | 4 +-
|
||||||
|
.../classes/java/io/ObjectOutputStream.java | 10 +-
|
||||||
|
.../classes/sun/awt/FontConfiguration.java | 7 +-
|
||||||
|
.../security/openssl/kae_cipher_rsa.c | 3 +-
|
||||||
|
.../security/openssl/kae_keyagreement_dh.c | 4 +-
|
||||||
|
.../openssl/RSAKeyPairGeneratorBenchmark.java | 2 +-
|
||||||
|
23 files changed, 194 insertions(+), 668 deletions(-)
|
||||||
|
create mode 100644 hotspot/test/runtime/Thread/StopAtExit.java
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/cds/archiveBuilder.hpp b/hotspot/src/share/vm/cds/archiveBuilder.hpp
|
||||||
|
index f7a5c107..93c0e245 100644
|
||||||
|
--- a/hotspot/src/share/vm/cds/archiveBuilder.hpp
|
||||||
|
+++ b/hotspot/src/share/vm/cds/archiveBuilder.hpp
|
||||||
|
@@ -29,7 +29,6 @@
|
||||||
|
#include "cds/archiveUtils.hpp"
|
||||||
|
#include "cds/dumpAllocStats.hpp"
|
||||||
|
#include "memory/metaspaceClosure.hpp"
|
||||||
|
-//#include "oops/array.hpp"
|
||||||
|
#include "oops/klass.hpp"
|
||||||
|
#include "runtime/os.hpp"
|
||||||
|
#include "utilities/align.hpp"
|
||||||
|
diff --git a/hotspot/src/share/vm/cds/archiveUtils.hpp b/hotspot/src/share/vm/cds/archiveUtils.hpp
|
||||||
|
index 55c2431a..44f03c8e 100644
|
||||||
|
--- a/hotspot/src/share/vm/cds/archiveUtils.hpp
|
||||||
|
+++ b/hotspot/src/share/vm/cds/archiveUtils.hpp
|
||||||
|
@@ -133,7 +133,6 @@ public:
|
||||||
|
_dump_region->append_intptr_t((intptr_t)tag);
|
||||||
|
}
|
||||||
|
|
||||||
|
- //void do_oop(oop* o);
|
||||||
|
void do_region(u_char* start, size_t size);
|
||||||
|
bool reading() const { return false; }
|
||||||
|
};
|
||||||
|
diff --git a/hotspot/src/share/vm/cds/dynamicArchive.hpp b/hotspot/src/share/vm/cds/dynamicArchive.hpp
|
||||||
|
index 1d5b7122..0e068e65 100644
|
||||||
|
--- a/hotspot/src/share/vm/cds/dynamicArchive.hpp
|
||||||
|
+++ b/hotspot/src/share/vm/cds/dynamicArchive.hpp
|
||||||
|
@@ -26,7 +26,6 @@
|
||||||
|
#ifndef SHARE_VM_CDS_DYNAMICARCHIVE_HPP
|
||||||
|
#define SHARE_VM_CDS_DYNAMICARCHIVE_HPP
|
||||||
|
|
||||||
|
-//#include "classfile/compactHashtable.hpp"
|
||||||
|
#include "memory/allocation.hpp"
|
||||||
|
#include "memory/filemap.hpp"
|
||||||
|
#include "memory/memRegion.hpp"
|
||||||
|
diff --git a/hotspot/src/share/vm/classfile/systemDictionary.cpp b/hotspot/src/share/vm/classfile/systemDictionary.cpp
|
||||||
|
index 2eebdbac..0ea2d9b7 100644
|
||||||
|
--- a/hotspot/src/share/vm/classfile/systemDictionary.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/classfile/systemDictionary.cpp
|
||||||
|
@@ -1344,7 +1344,7 @@ instanceKlassHandle SystemDictionary::load_shared_class(
|
||||||
|
Handle klass_name = java_lang_String::create_from_str(name, CHECK_0);
|
||||||
|
JavaValue result(T_OBJECT);
|
||||||
|
|
||||||
|
- // load_shared_class need protected domain to handle non-bootstrap loaded class,
|
||||||
|
+ // load_shared_class need protected domain to handle non-bootstrap loaded class,
|
||||||
|
// so here call_virtual to call getProtectionDomainInternal function of URLClassLoader.java,
|
||||||
|
// to get protected domain and save into result.
|
||||||
|
JavaCalls::call_virtual(&result,
|
||||||
|
diff --git a/hotspot/src/share/vm/classfile/systemDictionaryShared.hpp b/hotspot/src/share/vm/classfile/systemDictionaryShared.hpp
|
||||||
|
index 36423bee..fb9583d4 100644
|
||||||
|
--- a/hotspot/src/share/vm/classfile/systemDictionaryShared.hpp
|
||||||
|
+++ b/hotspot/src/share/vm/classfile/systemDictionaryShared.hpp
|
||||||
|
@@ -194,6 +194,7 @@ public:
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
static size_t estimate_size_for_archive();
|
||||||
|
static void write_to_archive();
|
||||||
|
static void write_dictionary(RunTimeSharedDictionary* dictionary, bool is_builtin);
|
||||||
|
diff --git a/hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp b/hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp
|
||||||
|
index bddf14b6..0244bf84 100644
|
||||||
|
--- a/hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp
|
||||||
|
@@ -98,9 +98,9 @@ void PLABStats::adjust_desired_plab_sz(uint no_of_gc_workers) {
|
||||||
|
if (_allocated == 0) {
|
||||||
|
assert(_unused == 0,
|
||||||
|
err_msg("Inconsistency in PLAB stats: "
|
||||||
|
- "_allocated: "SIZE_FORMAT", "
|
||||||
|
- "_wasted: "SIZE_FORMAT", "
|
||||||
|
- "_unused: "SIZE_FORMAT", "
|
||||||
|
+ "_allocated: " SIZE_FORMAT ", "
|
||||||
|
+ "_wasted: " SIZE_FORMAT ", "
|
||||||
|
+ "_unused: " SIZE_FORMAT ", "
|
||||||
|
"_used : "SIZE_FORMAT,
|
||||||
|
_allocated, _wasted, _unused, _used));
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/memory/filemap.cpp b/hotspot/src/share/vm/memory/filemap.cpp
|
||||||
|
index 1891fc80..0682cd67 100644
|
||||||
|
--- a/hotspot/src/share/vm/memory/filemap.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/memory/filemap.cpp
|
||||||
|
@@ -240,12 +240,7 @@ void FileMapInfo::FileMapHeader::populate(FileMapInfo* mapinfo, size_t alignment
|
||||||
|
_version = current_version();
|
||||||
|
_alignment = alignment;
|
||||||
|
_obj_alignment = ObjectAlignmentInBytes;
|
||||||
|
- /* TODO
|
||||||
|
- _compressed_oops = UseCompressedOops;
|
||||||
|
- _compressed_class_ptrs = UseCompressedClassPointers;
|
||||||
|
- _max_heap_size = MaxHeapSize;
|
||||||
|
- _narrow_klass_shift = CompressedKlassPointers::shift();
|
||||||
|
- */
|
||||||
|
+
|
||||||
|
if (!DynamicDumpSharedSpaces) {
|
||||||
|
_classpath_entry_table_size = mapinfo->_classpath_entry_table_size;
|
||||||
|
_classpath_entry_table = mapinfo->_classpath_entry_table;
|
||||||
|
diff --git a/hotspot/src/share/vm/memory/filemap.hpp b/hotspot/src/share/vm/memory/filemap.hpp
|
||||||
|
index 36b27f13..27fff35e 100644
|
||||||
|
--- a/hotspot/src/share/vm/memory/filemap.hpp
|
||||||
|
+++ b/hotspot/src/share/vm/memory/filemap.hpp
|
||||||
|
@@ -232,7 +232,7 @@ public:
|
||||||
|
char* region_end(int i) { return region_base(i) + used_aligned(i); }
|
||||||
|
struct FileMapHeader* header() { return _header; }
|
||||||
|
struct DynamicArchiveHeader* dynamic_header() {
|
||||||
|
- // assert(!is_static(), "must be");
|
||||||
|
+
|
||||||
|
return (struct DynamicArchiveHeader*)header();
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/memory/metaspaceClosure.cpp b/hotspot/src/share/vm/memory/metaspaceClosure.cpp
|
||||||
|
index 00ec8fce..e19402cb 100644
|
||||||
|
--- a/hotspot/src/share/vm/memory/metaspaceClosure.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/memory/metaspaceClosure.cpp
|
||||||
|
@@ -1,3 +1,28 @@
|
||||||
|
+/*
|
||||||
|
+ * Copyright (c) 2019, 2021, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
+ * Copyright (c) 2022, Huawei Technologies Co., Ltd. All rights reserved.
|
||||||
|
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
+ *
|
||||||
|
+ * This code is free software; you can redistribute it and/or modify it
|
||||||
|
+ * under the terms of the GNU General Public License version 2 only, as
|
||||||
|
+ * published by the Free Software Foundation.
|
||||||
|
+ *
|
||||||
|
+ * This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
+ * version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
+ * accompanied this code).
|
||||||
|
+ *
|
||||||
|
+ * You should have received a copy of the GNU General Public License version
|
||||||
|
+ * 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
+ *
|
||||||
|
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
+ * or visit www.oracle.com if you need additional information or have any
|
||||||
|
+ * questions.
|
||||||
|
+ *
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
#include "precompiled.hpp"
|
||||||
|
#include "memory/metaspaceClosure.hpp"
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/memory/metaspaceClosure.hpp b/hotspot/src/share/vm/memory/metaspaceClosure.hpp
|
||||||
|
index f67d8d6f..5422e2a0 100644
|
||||||
|
--- a/hotspot/src/share/vm/memory/metaspaceClosure.hpp
|
||||||
|
+++ b/hotspot/src/share/vm/memory/metaspaceClosure.hpp
|
||||||
|
@@ -1,4 +1,27 @@
|
||||||
|
-
|
||||||
|
+/*
|
||||||
|
+ * Copyright (c) 2019, 2021, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
+ * Copyright (c) 2022, Huawei Technologies Co., Ltd. All rights reserved.
|
||||||
|
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
+ *
|
||||||
|
+ * This code is free software; you can redistribute it and/or modify it
|
||||||
|
+ * under the terms of the GNU General Public License version 2 only, as
|
||||||
|
+ * published by the Free Software Foundation.
|
||||||
|
+ *
|
||||||
|
+ * This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
+ * version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
+ * accompanied this code).
|
||||||
|
+ *
|
||||||
|
+ * You should have received a copy of the GNU General Public License version
|
||||||
|
+ * 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
+ *
|
||||||
|
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
+ * or visit www.oracle.com if you need additional information or have any
|
||||||
|
+ * questions.
|
||||||
|
+ *
|
||||||
|
+ */
|
||||||
|
|
||||||
|
#ifndef SHARE_VM_MEMORY_METASPACECLOSURE_HPP
|
||||||
|
#define SHARE_VM_MEMORY_METASPACECLOSURE_HPP
|
||||||
|
diff --git a/hotspot/src/share/vm/oops/cpCache.cpp b/hotspot/src/share/vm/oops/cpCache.cpp
|
||||||
|
index 51f5397b..874cef41 100644
|
||||||
|
--- a/hotspot/src/share/vm/oops/cpCache.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/oops/cpCache.cpp
|
||||||
|
@@ -610,7 +610,6 @@ void ConstantPoolCache::metaspace_pointers_do(MetaspaceClosure* it) {
|
||||||
|
dynamic_cds_log->print_cr("Iter(ConstantPoolCache): %p", this);
|
||||||
|
}
|
||||||
|
it->push(&_constant_pool);
|
||||||
|
- // it->push(&_reference_map);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ConstantPoolCache::remove_unshareable_info() {
|
||||||
|
diff --git a/hotspot/src/share/vm/oops/instanceKlass.cpp b/hotspot/src/share/vm/oops/instanceKlass.cpp
|
||||||
|
index 9276b895..2a9cd92d 100644
|
||||||
|
--- a/hotspot/src/share/vm/oops/instanceKlass.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp
|
||||||
|
@@ -526,10 +526,6 @@ void InstanceKlass::metaspace_pointers_do(MetaspaceClosure* it) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- // it->push(&_nest_members);
|
||||||
|
- // it->push(&_permitted_subclasses);
|
||||||
|
- // it->push(&_record_components);
|
||||||
|
}
|
||||||
|
|
||||||
|
klassVtable* InstanceKlass::vtable() const {
|
||||||
|
diff --git a/hotspot/test/runtime/6929067/Test6929067.sh b/hotspot/test/runtime/6929067/Test6929067.sh
|
||||||
|
index 438a287c..c78e1787 100644
|
||||||
|
--- a/hotspot/test/runtime/6929067/Test6929067.sh
|
||||||
|
+++ b/hotspot/test/runtime/6929067/Test6929067.sh
|
||||||
|
@@ -102,7 +102,7 @@ esac
|
||||||
|
|
||||||
|
|
||||||
|
if [ "${VM_CPU}" == "aarch64" ]; then
|
||||||
|
- COMP_FLAG="-mabi=lp64"
|
||||||
|
+ COMP_FLAG=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
# VM type: need to know server or client
|
||||||
|
diff --git a/hotspot/test/runtime/InitialThreadOverflow/testme.sh b/hotspot/test/runtime/InitialThreadOverflow/testme.sh
|
||||||
|
index ffd7d6e3..cf48c2fe 100644
|
||||||
|
--- a/hotspot/test/runtime/InitialThreadOverflow/testme.sh
|
||||||
|
+++ b/hotspot/test/runtime/InitialThreadOverflow/testme.sh
|
||||||
|
@@ -52,7 +52,7 @@ fi
|
||||||
|
CFLAGS="-m${VM_BITS}"
|
||||||
|
|
||||||
|
if [ "${VM_CPU}" == "aarch64" ]; then
|
||||||
|
- CFLAGS="-mabi=lp64"
|
||||||
|
+ CFLAGS=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
LD_LIBRARY_PATH=.:${COMPILEJAVA}/jre/lib/${VM_CPU}/${VM_TYPE}:/usr/lib:$LD_LIBRARY_PATH
|
||||||
|
diff --git a/hotspot/test/runtime/Thread/StopAtExit.java b/hotspot/test/runtime/Thread/StopAtExit.java
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..8d6344a6
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/hotspot/test/runtime/Thread/StopAtExit.java
|
||||||
|
@@ -0,0 +1,119 @@
|
||||||
|
+/*
|
||||||
|
+ * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
+ *
|
||||||
|
+ * This code is free software; you can redistribute it and/or modify it
|
||||||
|
+ * under the terms of the GNU General Public License version 2 only, as
|
||||||
|
+ * published by the Free Software Foundation.
|
||||||
|
+ *
|
||||||
|
+ * This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
+ * version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
+ * accompanied this code).
|
||||||
|
+ *
|
||||||
|
+ * You should have received a copy of the GNU General Public License version
|
||||||
|
+ * 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
+ *
|
||||||
|
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
+ * or visit www.oracle.com if you need additional information or have any
|
||||||
|
+ * questions.
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+/**
|
||||||
|
+ * @test
|
||||||
|
+ * @bug 8167108
|
||||||
|
+ * @summary Stress test java.lang.Thread.stop() at thread exit.
|
||||||
|
+ * @run main/othervm StopAtExit
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+import java.util.concurrent.CountDownLatch;
|
||||||
|
+import java.util.concurrent.TimeUnit;
|
||||||
|
+
|
||||||
|
+public class StopAtExit extends Thread {
|
||||||
|
+ final static int N_THREADS = 32;
|
||||||
|
+ final static int N_LATE_CALLS = 1000;
|
||||||
|
+
|
||||||
|
+ public CountDownLatch exitSyncObj = new CountDownLatch(1);
|
||||||
|
+ public CountDownLatch startSyncObj = new CountDownLatch(1);
|
||||||
|
+
|
||||||
|
+ @Override
|
||||||
|
+ public void run() {
|
||||||
|
+ try {
|
||||||
|
+ // Tell main thread we have started.
|
||||||
|
+ startSyncObj.countDown();
|
||||||
|
+ try {
|
||||||
|
+ // Wait for main thread to interrupt us so we
|
||||||
|
+ // can race to exit.
|
||||||
|
+ exitSyncObj.await();
|
||||||
|
+ } catch (InterruptedException e) {
|
||||||
|
+ // ignore because we expect one
|
||||||
|
+ }
|
||||||
|
+ } catch (ThreadDeath td) {
|
||||||
|
+ // ignore because we're testing Thread.stop() which throws it
|
||||||
|
+ } catch (NoClassDefFoundError ncdfe) {
|
||||||
|
+ // ignore because we're testing Thread.stop() which can cause it
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ public static void main(String[] args) {
|
||||||
|
+ StopAtExit threads[] = new StopAtExit[N_THREADS];
|
||||||
|
+
|
||||||
|
+ for (int i = 0; i < N_THREADS; i++ ) {
|
||||||
|
+ threads[i] = new StopAtExit();
|
||||||
|
+ int late_count = 1;
|
||||||
|
+ threads[i].start();
|
||||||
|
+ try {
|
||||||
|
+ // Wait for the worker thread to get going.
|
||||||
|
+ threads[i].startSyncObj.await();
|
||||||
|
+
|
||||||
|
+ // This interrupt() call will break the worker out
|
||||||
|
+ // of the exitSyncObj.await() call and the stop()
|
||||||
|
+ // calls will come in during thread exit.
|
||||||
|
+ threads[i].interrupt();
|
||||||
|
+ for (; late_count <= N_LATE_CALLS; late_count++) {
|
||||||
|
+ threads[i].stop();
|
||||||
|
+
|
||||||
|
+ if (!threads[i].isAlive()) {
|
||||||
|
+ // Done with Thread.stop() calls since
|
||||||
|
+ // thread is not alive.
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ } catch (InterruptedException e) {
|
||||||
|
+ throw new Error("Unexpected: " + e);
|
||||||
|
+ } catch (NoClassDefFoundError ncdfe) {
|
||||||
|
+ // Ignore because we're testing Thread.stop() which can
|
||||||
|
+ // cause it. Yes, a NoClassDefFoundError that happens
|
||||||
|
+ // in a worker thread can subsequently be seen in the
|
||||||
|
+ // main thread.
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ System.out.println("INFO: thread #" + i + ": made " + late_count +
|
||||||
|
+ " late calls to java.lang.Thread.stop()");
|
||||||
|
+ System.out.println("INFO: thread #" + i + ": N_LATE_CALLS==" +
|
||||||
|
+ N_LATE_CALLS + " value is " +
|
||||||
|
+ ((late_count >= N_LATE_CALLS) ? "NOT " : "") +
|
||||||
|
+ "large enough to cause a Thread.stop() " +
|
||||||
|
+ "call after thread exit.");
|
||||||
|
+
|
||||||
|
+ try {
|
||||||
|
+ threads[i].join();
|
||||||
|
+ } catch (InterruptedException e) {
|
||||||
|
+ throw new Error("Unexpected: " + e);
|
||||||
|
+ }
|
||||||
|
+ threads[i].stop();
|
||||||
|
+ if (threads[i].isAlive()) {
|
||||||
|
+ throw new Error("Expected !Thread.isAlive() after thread #" +
|
||||||
|
+ i + " has been join()'ed");
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ String cmd = System.getProperty("sun.java.command");
|
||||||
|
+ if (cmd != null && !cmd.startsWith("com.sun.javatest.regtest.agent.MainWrapper")) {
|
||||||
|
+ // Exit with success in a non-JavaTest environment:
|
||||||
|
+ System.exit(0);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
diff --git a/jdk/make/profile-rtjar-includes.txt b/jdk/make/profile-rtjar-includes.txt
|
||||||
|
index f36d1d5c..dd275590 100644
|
||||||
|
--- a/jdk/make/profile-rtjar-includes.txt
|
||||||
|
+++ b/jdk/make/profile-rtjar-includes.txt
|
||||||
|
@@ -73,8 +73,8 @@ PROFILE_1_RTJAR_INCLUDE_PACKAGES := \
|
||||||
|
|
||||||
|
PROFILE_1_RTJAR_INCLUDE_TYPES :=
|
||||||
|
|
||||||
|
-PROFILE_1_RTJAR_EXCLUDE_TYPES :=
|
||||||
|
-
|
||||||
|
+PROFILE_1_RTJAR_EXCLUDE_TYPES := \
|
||||||
|
+ com/huawei
|
||||||
|
PROFILE_1_INCLUDE_METAINF_SERVICES :=
|
||||||
|
|
||||||
|
|
||||||
|
@@ -99,7 +99,8 @@ PROFILE_2_RTJAR_INCLUDE_PACKAGES := \
|
||||||
|
|
||||||
|
PROFILE_2_RTJAR_INCLUDE_TYPES :=
|
||||||
|
|
||||||
|
-PROFILE_2_RTJAR_EXCLUDE_TYPES :=
|
||||||
|
+PROFILE_2_RTJAR_EXCLUDE_TYPES := \
|
||||||
|
+ com/huawei
|
||||||
|
|
||||||
|
PROFILE_2_INCLUDE_METAINF_SERVICES := \
|
||||||
|
META-INF/services/sun.util.spi.XmlPropertiesProvider
|
||||||
|
diff --git a/jdk/src/share/classes/java/io/ObjectInputStream.java b/jdk/src/share/classes/java/io/ObjectInputStream.java
|
||||||
|
index af6c5dd6..85e3958b 100644
|
||||||
|
--- a/jdk/src/share/classes/java/io/ObjectInputStream.java
|
||||||
|
+++ b/jdk/src/share/classes/java/io/ObjectInputStream.java
|
||||||
|
@@ -768,7 +768,7 @@ public class ObjectInputStream
|
||||||
|
* Cache the class meta during serialization.
|
||||||
|
* Only used in FastSerilizer.
|
||||||
|
*/
|
||||||
|
- protected static ConcurrentHashMap<String,Class<?>> nameToClass = new ConcurrentHashMap<>();
|
||||||
|
+ private static ConcurrentHashMap<String,Class<?>> nameToClass = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the local class equivalent of the specified stream class
|
||||||
|
@@ -1013,7 +1013,7 @@ public class ObjectInputStream
|
||||||
|
|
||||||
|
if (s0 != STREAM_MAGIC) {
|
||||||
|
throw new StreamCorruptedException(
|
||||||
|
- String.format("invalid stream header: %04X%04X, and FastSerializer is activated", s0, s1));
|
||||||
|
+ String.format("invalid stream header: %04X%04X", s0, s1));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!fastSerializerEscapeMode) {
|
||||||
|
diff --git a/jdk/src/share/classes/java/io/ObjectOutputStream.java b/jdk/src/share/classes/java/io/ObjectOutputStream.java
|
||||||
|
index 840f7fdc..23c1fff5 100644
|
||||||
|
--- a/jdk/src/share/classes/java/io/ObjectOutputStream.java
|
||||||
|
+++ b/jdk/src/share/classes/java/io/ObjectOutputStream.java
|
||||||
|
@@ -234,11 +234,6 @@ public class ObjectOutputStream
|
||||||
|
new sun.security.action.GetBooleanAction(
|
||||||
|
"sun.io.serialization.extendedDebugInfo")).booleanValue();
|
||||||
|
|
||||||
|
- /**
|
||||||
|
- * Magic number that is written to the stream header when using fastserilizer.
|
||||||
|
- */
|
||||||
|
- private static final short STREAM_MAGIC_FAST = (short)0xdeca;
|
||||||
|
-
|
||||||
|
private static final Unsafe UNSAFE = Unsafe.getUnsafe();
|
||||||
|
|
||||||
|
/**
|
||||||
|
@@ -255,6 +250,11 @@ public class ObjectOutputStream
|
||||||
|
new sun.security.action.GetBooleanAction(
|
||||||
|
"printFastSerializer")).booleanValue();
|
||||||
|
|
||||||
|
+ /**
|
||||||
|
+ * Magic number that is written to the stream header when using fastserilizer.
|
||||||
|
+ */
|
||||||
|
+ private static final short STREAM_MAGIC_FAST = (short)0xdeca;
|
||||||
|
+
|
||||||
|
/**
|
||||||
|
* Creates an ObjectOutputStream that writes to the specified OutputStream.
|
||||||
|
* This constructor writes the serialization stream header to the
|
||||||
|
diff --git a/jdk/src/share/classes/sun/awt/FontConfiguration.java b/jdk/src/share/classes/sun/awt/FontConfiguration.java
|
||||||
|
index 93e38e06..c2e94d15 100644
|
||||||
|
--- a/jdk/src/share/classes/sun/awt/FontConfiguration.java
|
||||||
|
+++ b/jdk/src/share/classes/sun/awt/FontConfiguration.java
|
||||||
|
@@ -300,12 +300,7 @@ public abstract class FontConfiguration {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foundOsSpecificFile = false;
|
||||||
|
-
|
||||||
|
- configFile = findImpl(baseName);
|
||||||
|
- if (configFile != null) {
|
||||||
|
- return configFile;
|
||||||
|
- }
|
||||||
|
- return null;
|
||||||
|
+ return (configFile = findImpl(baseName));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Initialize the internal data tables from binary format font
|
||||||
|
diff --git a/jdk/src/solaris/native/org/openeuler/security/openssl/kae_cipher_rsa.c b/jdk/src/solaris/native/org/openeuler/security/openssl/kae_cipher_rsa.c
|
||||||
|
index 73b94cbe..d9b16ab9 100644
|
||||||
|
--- a/jdk/src/solaris/native/org/openeuler/security/openssl/kae_cipher_rsa.c
|
||||||
|
+++ b/jdk/src/solaris/native/org/openeuler/security/openssl/kae_cipher_rsa.c
|
||||||
|
@@ -174,6 +174,7 @@ static int RSACryptOAEPPadding(JNIEnv* env, jlong keyAddress, jint inLen, jbyteA
|
||||||
|
jbyte* inBytes = NULL;
|
||||||
|
// outLen type should be size_t
|
||||||
|
// EVP_PKEY_encrypt takes the outLen address as a parameter, and the parameter type is size_t*
|
||||||
|
+ // You can refer to the issue #2774 to see more content
|
||||||
|
size_t outLen = 0;
|
||||||
|
ENGINE* kaeEngine = GetEngineByAlgorithmIndex(RSA_INDEX);
|
||||||
|
KAE_TRACE("RSACryptOAEPPadding: kaeEngine => %p", kaeEngine);
|
||||||
|
@@ -366,7 +367,7 @@ JNIEXPORT jlong JNICALL Java_org_openeuler_security_openssl_KAERSACipher_nativeC
|
||||||
|
}
|
||||||
|
|
||||||
|
// set rsa public key params n and e
|
||||||
|
- if(RSA_set0_key(rsa, bnN, bnE, NULL) <= 0) {
|
||||||
|
+ if (RSA_set0_key(rsa, bnN, bnE, NULL) <= 0) {
|
||||||
|
KAE_ThrowFromOpenssl(env, "RSA_set0_key", KAE_ThrowRuntimeException);
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
diff --git a/jdk/src/solaris/native/org/openeuler/security/openssl/kae_keyagreement_dh.c b/jdk/src/solaris/native/org/openeuler/security/openssl/kae_keyagreement_dh.c
|
||||||
|
index 90b33045..d8d2ee7c 100644
|
||||||
|
--- a/jdk/src/solaris/native/org/openeuler/security/openssl/kae_keyagreement_dh.c
|
||||||
|
+++ b/jdk/src/solaris/native/org/openeuler/security/openssl/kae_keyagreement_dh.c
|
||||||
|
@@ -131,9 +131,9 @@ cleanup:
|
||||||
|
if (g_bn != NULL)
|
||||||
|
KAE_ReleaseBigNumFromByteArray(g_bn);
|
||||||
|
if (secret != NULL)
|
||||||
|
- free(secret);
|
||||||
|
+ free(secret);
|
||||||
|
if (computeKeyRetBn != NULL)
|
||||||
|
- BN_free(computeKeyRetBn);
|
||||||
|
+ BN_free(computeKeyRetBn);
|
||||||
|
|
||||||
|
return retByteArray;
|
||||||
|
}
|
||||||
|
diff --git a/jdk/test/micro/org/openeuler/bench/security/openssl/RSAKeyPairGeneratorBenchmark.java b/jdk/test/micro/org/openeuler/bench/security/openssl/RSAKeyPairGeneratorBenchmark.java
|
||||||
|
index b1739222..13d3e8cf 100644
|
||||||
|
--- a/jdk/test/micro/org/openeuler/bench/security/openssl/RSAKeyPairGeneratorBenchmark.java
|
||||||
|
+++ b/jdk/test/micro/org/openeuler/bench/security/openssl/RSAKeyPairGeneratorBenchmark.java
|
||||||
|
@@ -54,7 +54,7 @@ public class RSAKeyPairGeneratorBenchmark extends BenchmarkBase {
|
||||||
|
public KeyPair generateKeyPair() throws Exception {
|
||||||
|
return keyPairGenerator.generateKeyPair();
|
||||||
|
}
|
||||||
|
-
|
||||||
|
+
|
||||||
|
private KeyPairGenerator createKeyPairGenerator() throws Exception {
|
||||||
|
if (prov != null) {
|
||||||
|
return KeyPairGenerator.getInstance(algorithm, prov);
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
@ -0,0 +1,111 @@
|
|||||||
|
From 59040a3951dfdf21ba646cc9510739f175751469 Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Wed, 21 Sep 2022 09:54:04 +0800
|
||||||
|
Subject: [PATCH 2/5] add configuration option of huawei internal version shown in release file
|
||||||
|
|
||||||
|
---
|
||||||
|
common/autoconf/generated-configure.sh | 17 +++++++++++++++++
|
||||||
|
common/autoconf/jdk-options.m4 | 11 +++++++++++
|
||||||
|
common/autoconf/spec.gmk.in | 3 +++
|
||||||
|
jdk/make/Images.gmk | 1 +
|
||||||
|
4 files changed, 32 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh
|
||||||
|
index 53e6cf18..a6ba1ac9 100644
|
||||||
|
--- a/common/autoconf/generated-configure.sh
|
||||||
|
+++ b/common/autoconf/generated-configure.sh
|
||||||
|
@@ -831,6 +831,7 @@ COPYRIGHT_YEAR
|
||||||
|
VENDOR_URL_VM_BUG
|
||||||
|
VENDOR_URL_BUG
|
||||||
|
VENDOR_URL
|
||||||
|
+INTERNAL_VERSION
|
||||||
|
COMPANY_NAME
|
||||||
|
MACOSX_BUNDLE_ID_BASE
|
||||||
|
MACOSX_BUNDLE_NAME_BASE
|
||||||
|
@@ -1077,6 +1078,7 @@ with_vendor_url
|
||||||
|
with_vendor_bug_url
|
||||||
|
with_vendor_vm_bug_url
|
||||||
|
with_copyright_year
|
||||||
|
+with_internal_version
|
||||||
|
with_boot_jdk
|
||||||
|
with_boot_jdk_jvmargs
|
||||||
|
with_add_source_root
|
||||||
|
@@ -1937,6 +1939,9 @@ Optional Packages:
|
||||||
|
--with-vendor-vm-bug-url
|
||||||
|
Sets the bug URL which will be displayed when the VM
|
||||||
|
crashes [not specified]
|
||||||
|
+ --with-internal-version
|
||||||
|
+ Sets the internal version which will be
|
||||||
|
+ displayed in the release file [not specified]
|
||||||
|
--with-copyright-year Set copyright year value for build [current year]
|
||||||
|
--with-boot-jdk path to Boot JDK (used to bootstrap build) [probed]
|
||||||
|
--with-boot-jdk-jvmargs specify JVM arguments to be passed to all
|
||||||
|
@@ -20301,6 +20306,18 @@ fi
|
||||||
|
COPYRIGHT_YEAR=`date +'%Y'`
|
||||||
|
fi
|
||||||
|
|
||||||
|
+# Check whether --with-internal-version was given.
|
||||||
|
+if test "${with_internal_version+set}" = set; then :
|
||||||
|
+ withval=$with_internal_version;
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+ if test "x$with_internal_version" = xyes; then
|
||||||
|
+ as_fn_error $? "--with-internal-version must have a value" "$LINENO" 5
|
||||||
|
+ elif ! [[ $with_internal_version =~ ^[[:print:]]*$ ]] ; then
|
||||||
|
+ as_fn_error $? "--with-internal-version contains non-printing characters: $with_internal_version" "$LINENO" 5
|
||||||
|
+ else
|
||||||
|
+ INTERNAL_VERSION="$with_internal_version"
|
||||||
|
+ fi
|
||||||
|
|
||||||
|
if test "x$JDK_UPDATE_VERSION" != x; then
|
||||||
|
JDK_VERSION="${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_MICRO_VERSION}_${JDK_UPDATE_VERSION}"
|
||||||
|
diff --git a/common/autoconf/jdk-options.m4 b/common/autoconf/jdk-options.m4
|
||||||
|
index c506086d..b9f25175 100644
|
||||||
|
--- a/common/autoconf/jdk-options.m4
|
||||||
|
+++ b/common/autoconf/jdk-options.m4
|
||||||
|
@@ -627,6 +627,17 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_VERSION_NUMBERS],
|
||||||
|
fi
|
||||||
|
AC_SUBST(COPYRIGHT_YEAR)
|
||||||
|
|
||||||
|
+ AC_ARG_WITH(internal-version, [AS_HELP_STRING([--with-internal-version],
|
||||||
|
+ [Sets the internal version which will be displayed in the release file @<:@not specified@:>@])])
|
||||||
|
+ if test "x$with_internal_version" = xyes; then
|
||||||
|
+ AC_MSG_ERROR([--with-internal-version must have a value])
|
||||||
|
+ elif [ ! [[ $with_internal_version =~ ^[[:print:]]*$ ]] ]; then
|
||||||
|
+ AC_MSG_ERROR([--with-internal-version contains non-printing characters: $with_internal_version])
|
||||||
|
+ else
|
||||||
|
+ INTERNAL_VERSION="$with_internal_version"
|
||||||
|
+ fi
|
||||||
|
+ AC_SUBST(INTERNAL_VERSION)
|
||||||
|
+
|
||||||
|
if test "x$JDK_UPDATE_VERSION" != x; then
|
||||||
|
JDK_VERSION="${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_MICRO_VERSION}_${JDK_UPDATE_VERSION}"
|
||||||
|
else
|
||||||
|
diff --git a/common/autoconf/spec.gmk.in b/common/autoconf/spec.gmk.in
|
||||||
|
index 79248cbf..ca5e2d74 100644
|
||||||
|
--- a/common/autoconf/spec.gmk.in
|
||||||
|
+++ b/common/autoconf/spec.gmk.in
|
||||||
|
@@ -162,6 +162,9 @@ VENDOR_URL:=@VENDOR_URL@
|
||||||
|
VENDOR_URL_BUG:=@VENDOR_URL_BUG@
|
||||||
|
VENDOR_URL_VM_BUG:=@VENDOR_URL_VM_BUG@
|
||||||
|
|
||||||
|
+# Huawei internal version for use in release file.
|
||||||
|
+INTERNAL_VERSION:=@INTERNAL_VERSION@
|
||||||
|
+
|
||||||
|
# Location where build customization files may be found
|
||||||
|
CUSTOM_MAKE_DIR:=@CUSTOM_MAKE_DIR@
|
||||||
|
|
||||||
|
diff --git a/jdk/make/Images.gmk b/jdk/make/Images.gmk
|
||||||
|
index ac39ad33..233ce703 100644
|
||||||
|
--- a/jdk/make/Images.gmk
|
||||||
|
+++ b/jdk/make/Images.gmk
|
||||||
|
@@ -618,6 +618,7 @@ define create-info-file
|
||||||
|
$(call info-file-item, "OS_ARCH", "$(OPENJDK_TARGET_CPU_LEGACY)")
|
||||||
|
if [ -n "$(JDK_ARCH_ABI_PROP_NAME)" ]; then $(call info-file-item, "SUN_ARCH_ABI", "$(JDK_ARCH_ABI_PROP_NAME)"); fi
|
||||||
|
$(call info-file-item, "SOURCE", "$(strip $(SOURCE_REVISION))")
|
||||||
|
+ if [ -n "$(INTERNAL_VERSION)" ]; then $(call info-file-item, "INTERNAL_VERSION", "$(INTERNAL_VERSION)"); fi
|
||||||
|
endef
|
||||||
|
|
||||||
|
SOURCE_REVISION = $(shell \
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
@ -125,7 +125,7 @@ index 00000000..9b614024
|
|||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/version.txt
|
+++ b/version.txt
|
||||||
@@ -0,0 +1 @@
|
@@ -0,0 +1 @@
|
||||||
+8.332.9.0.13
|
+8.342.7.0.13
|
||||||
--
|
--
|
||||||
2.23.0
|
2.23.0
|
||||||
|
|
||||||
|
|||||||
38
change-sa-jdi.jar-make-file-for-BEP.PATCH
Normal file
38
change-sa-jdi.jar-make-file-for-BEP.PATCH
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From 980b919fde4e1353a9ff989fb78031a48d395ec0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: zhangyipeng <zhangyipeng7@huawei.com>
|
||||||
|
Date: Fri, 6 May 2022 15:23:26 +0800
|
||||||
|
Subject: [PATCH 02/10] change sa-jdi.jar make file for BEP
|
||||||
|
|
||||||
|
---
|
||||||
|
hotspot/make/linux/makefiles/sa.make | 8 ++++++--
|
||||||
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/hotspot/make/linux/makefiles/sa.make b/hotspot/make/linux/makefiles/sa.make
|
||||||
|
index cdcb16a1a..6388d95c9 100644
|
||||||
|
--- a/hotspot/make/linux/makefiles/sa.make
|
||||||
|
+++ b/hotspot/make/linux/makefiles/sa.make
|
||||||
|
@@ -50,6 +50,7 @@ SA_CLASSPATH = $(BOOT_JAVA_HOME)/lib/tools.jar
|
||||||
|
MODULELIB_PATH= $(BOOT_JAVA_HOME)/lib/modules
|
||||||
|
|
||||||
|
AGENT_FILES_LIST := $(GENERATED)/agent.classes.list
|
||||||
|
+SA_CLASSDIR_JAR_CONTENTS := $(GENERATED)/sa.jar_contents
|
||||||
|
|
||||||
|
SA_CLASSDIR = $(GENERATED)/saclasses
|
||||||
|
|
||||||
|
@@ -104,8 +105,11 @@ $(GENERATED)/sa-jdi.jar:: $(AGENT_FILES)
|
||||||
|
$(QUIETLY) rm -f $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources/*
|
||||||
|
$(QUIETLY) cp $(AGENT_SRC_DIR)/sun/jvm/hotspot/ui/resources/*.png $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources/
|
||||||
|
$(QUIETLY) cp -r $(AGENT_SRC_DIR)/images/* $(SA_CLASSDIR)/
|
||||||
|
- $(QUIETLY) $(REMOTE) $(RUN.JAR) cf $@ -C $(SA_CLASSDIR)/ .
|
||||||
|
- $(QUIETLY) $(REMOTE) $(RUN.JAR) uf $@ -C $(AGENT_SRC_DIR) META-INF/services/com.sun.jdi.connect.Connector
|
||||||
|
+ $(QUIETLY) rm -f $(SA_CLASSDIR_JAR_CONTENTS) && touch $(SA_CLASSDIR_JAR_CONTENTS)
|
||||||
|
+ $(QUIETLY) find $(SA_CLASSDIR) -type f | sed 's|$(SA_CLASSDIR)/||g' >> $(SA_CLASSDIR_JAR_CONTENTS)
|
||||||
|
+ $(QUIETLY) cd $(AGENT_SRC_DIR) && $(REMOTE) $(RUN.JAR) cf $@ META-INF/services/com.sun.jdi.connect.Connector
|
||||||
|
+ $(QUIETLY) cd $(SA_CLASSDIR) && $(REMOTE) $(RUN.JAR) uf $@ @$(SA_CLASSDIR_JAR_CONTENTS)
|
||||||
|
+ $(QUIETLY) cd $(TOPDIR)
|
||||||
|
$(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.x86.X86ThreadContext
|
||||||
|
$(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext
|
||||||
|
$(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.aarch64.AARCH64ThreadContext
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
diff --git a/make/common/NativeCompilation.gmk b/make/common/NativeCompilation.gmk
|
|
||||||
index 0e0346374..2d9bdbeed 100644
|
|
||||||
--- a/make/common/NativeCompilation.gmk
|
|
||||||
+++ b/make/common/NativeCompilation.gmk
|
|
||||||
@@ -537,7 +537,7 @@ define SetupNativeCompilation
|
|
||||||
# to be rebuilt properly.
|
|
||||||
$$($1_DEBUGINFO_ZIP): $$($1_DEBUGINFO_FILES) $$($1_TARGET)
|
|
||||||
$(CD) $$($1_OBJECT_DIR) \
|
|
||||||
- && $(ZIP) -q $$@ $$($1_DEBUGINFO_FILES)
|
|
||||||
+ && $(ZIP) -q $$@ $$(subst $$($1_OBJECT_DIR)/,,$$($1_DEBUGINFO_FILES))
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
ifneq ($$($1_STRIP_POLICY), no_strip)
|
|
||||||
--
|
|
||||||
2.22.0
|
|
||||||
|
|
||||||
34
dynamic-cds-_header-and-_fd-handles-are-not-free.patch
Normal file
34
dynamic-cds-_header-and-_fd-handles-are-not-free.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From cf12a2fae11baf41773308a48d9cfad9031f5344 Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Fri, 9 Sep 2022 11:26:22 +0800
|
||||||
|
Subject: dynamic cds _header and _fd handles are not free.
|
||||||
|
|
||||||
|
---
|
||||||
|
hotspot/src/share/vm/memory/filemap.cpp | 12 ++++++++++++
|
||||||
|
1 file changed, 12 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/memory/filemap.cpp b/hotspot/src/share/vm/memory/filemap.cpp
|
||||||
|
index adb043f77..6549828e3 100644
|
||||||
|
--- a/hotspot/src/share/vm/memory/filemap.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/memory/filemap.cpp
|
||||||
|
@@ -169,6 +169,18 @@ FileMapInfo::~FileMapInfo() {
|
||||||
|
assert(_dynamic_archive_info == this, "must be singleton"); // not thread safe
|
||||||
|
_dynamic_archive_info = NULL;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ if (_header != NULL) {
|
||||||
|
+ delete _header;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (_file_open) {
|
||||||
|
+ if (::close(_fd) < 0) {
|
||||||
|
+ fail_stop("Unable to close the shared archive file.");
|
||||||
|
+ }
|
||||||
|
+ _file_open = false;
|
||||||
|
+ _fd = -1;
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
void FileMapInfo::populate_header(size_t alignment) {
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
@ -0,0 +1,113 @@
|
|||||||
|
From 68293d50de005b5982a3cce437fc7af807d7264e Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Wed, 14 Sep 2022 14:57:25 +0800
|
||||||
|
Subject: fix dumped heap using jhat parsing to appear failed to
|
||||||
|
resolve object id warning message
|
||||||
|
|
||||||
|
---
|
||||||
|
hotspot/src/share/vm/services/heapDumper.cpp | 5 --
|
||||||
|
.../serviceability/dcmd/gc/HeapDumpTest.java | 77 +++++++++++++++++++
|
||||||
|
2 files changed, 77 insertions(+), 5 deletions(-)
|
||||||
|
create mode 100644 jdk/test/serviceability/dcmd/gc/HeapDumpTest.java
|
||||||
|
|
||||||
|
diff --git a/hotspot/src/share/vm/services/heapDumper.cpp b/hotspot/src/share/vm/services/heapDumper.cpp
|
||||||
|
index f7aba2a84..b5915c412 100644
|
||||||
|
--- a/hotspot/src/share/vm/services/heapDumper.cpp
|
||||||
|
+++ b/hotspot/src/share/vm/services/heapDumper.cpp
|
||||||
|
@@ -984,11 +984,6 @@ void DumperSupport::dump_class_and_array_classes(DumpWriter* writer, Klass* k) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
- // Ignore the class if it hasn't been initialized yet
|
||||||
|
- if (!ik->is_linked()) {
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
writer->write_u1(HPROF_GC_CLASS_DUMP);
|
||||||
|
|
||||||
|
// class ID
|
||||||
|
diff --git a/jdk/test/serviceability/dcmd/gc/HeapDumpTest.java b/jdk/test/serviceability/dcmd/gc/HeapDumpTest.java
|
||||||
|
new file mode 100644
|
||||||
|
index 000000000..7204c2c37
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/jdk/test/serviceability/dcmd/gc/HeapDumpTest.java
|
||||||
|
@@ -0,0 +1,77 @@
|
||||||
|
+/*
|
||||||
|
+ * Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
+ *
|
||||||
|
+ * This code is free software; you can redistribute it and/or modify it
|
||||||
|
+ * under the terms of the GNU General Public License version 2 only, as
|
||||||
|
+ * published by the Free Software Foundation.
|
||||||
|
+ *
|
||||||
|
+ * This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
+ * version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
+ * accompanied this code).
|
||||||
|
+ *
|
||||||
|
+ * You should have received a copy of the GNU General Public License version
|
||||||
|
+ * 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
+ *
|
||||||
|
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
+ * or visit www.oracle.com if you need additional information or have any
|
||||||
|
+ * questions.
|
||||||
|
+ */
|
||||||
|
+import org.testng.annotations.Test;
|
||||||
|
+import org.testng.Assert;
|
||||||
|
+import java.io.File;
|
||||||
|
+import java.nio.file.Files;
|
||||||
|
+import java.io.IOException;
|
||||||
|
+import java.util.List;
|
||||||
|
+import jdk.test.lib.hprof.HprofParser;
|
||||||
|
+import jdk.test.lib.hprof.model.Snapshot;
|
||||||
|
+import jdk.test.lib.JDKToolFinder;
|
||||||
|
+import jdk.test.lib.process.OutputAnalyzer;
|
||||||
|
+import jdk.test.lib.dcmd.CommandExecutor;
|
||||||
|
+import jdk.test.lib.dcmd.PidJcmdExecutor;
|
||||||
|
+/*
|
||||||
|
+ * @test
|
||||||
|
+ * @summary Test of diagnostic command GC.heap_dump
|
||||||
|
+ * @library /lib
|
||||||
|
+ * @run testng HeapDumpTest
|
||||||
|
+ */
|
||||||
|
+public class HeapDumpTest {
|
||||||
|
+ protected String heapDumpArgs = "";
|
||||||
|
+
|
||||||
|
+ public void run(CommandExecutor executor) throws IOException {
|
||||||
|
+ File dump = new File("jcmd.gc.heap_dump." + System.currentTimeMillis() + ".hprof");
|
||||||
|
+ if (dump.exists()) {
|
||||||
|
+ dump.delete();
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ String cmd = "GC.heap_dump " + heapDumpArgs + " " + dump.getAbsolutePath();
|
||||||
|
+ executor.execute(cmd);
|
||||||
|
+
|
||||||
|
+ verifyHeapDump(dump);
|
||||||
|
+ dump.delete();
|
||||||
|
+ }
|
||||||
|
+ private void verifyHeapDump(File dump) {
|
||||||
|
+ Assert.assertTrue(dump.exists() && dump.isFile(), "Could not create dump file " + dump.getAbsolutePath());
|
||||||
|
+ try {
|
||||||
|
+ File out = HprofParser.parse(dump);
|
||||||
|
+ Assert.assertTrue(out != null && out.exists() && out.isFile(), "Could not find hprof parser output file");
|
||||||
|
+ List<String> lines = Files.readAllLines(out.toPath());
|
||||||
|
+ Assert.assertTrue(lines.size() > 0, "hprof parser output file is empty");
|
||||||
|
+ for (String line : lines) {
|
||||||
|
+ Assert.assertFalse(line.matches(".*WARNING(?!.*Failed to resolve object.*constantPoolOop.*).*"));
|
||||||
|
+ }
|
||||||
|
+ out.delete();
|
||||||
|
+ } catch (Exception e) {
|
||||||
|
+ e.printStackTrace();
|
||||||
|
+ Assert.fail("Could not parse dump file " + dump.getAbsolutePath());
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ /* GC.heap_dump is not available over JMX, running jcmd pid executor instead */
|
||||||
|
+ @Test
|
||||||
|
+ public void pid() throws IOException {
|
||||||
|
+ run(new PidJcmdExecutor());
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
@ -17,38 +17,10 @@ Signed-off-by: He Dongbo <hedongbo@huawei.com>
|
|||||||
create mode 100644 jdk/test/micro/org/openeuler/bench/security/openssl/HMacBenchmark.java
|
create mode 100644 jdk/test/micro/org/openeuler/bench/security/openssl/HMacBenchmark.java
|
||||||
|
|
||||||
diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh
|
diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh
|
||||||
index 60298422f..bdfdd207b 100644
|
index 27cff542..d19c772e 100644
|
||||||
--- a/common/autoconf/generated-configure.sh
|
--- a/common/autoconf/generated-configure.sh
|
||||||
+++ b/common/autoconf/generated-configure.sh
|
+++ b/common/autoconf/generated-configure.sh
|
||||||
@@ -4288,7 +4288,7 @@ TOOLCHAIN_DESCRIPTION_xlc="IBM XL C/C++"
|
@@ -25937,10 +25937,10 @@ $as_echo "$as_me: Valid Visual Studio versions: $VALID_VS_VERSIONS." >&6;}
|
||||||
|
|
||||||
################################################################################
|
|
||||||
# The order of these defines the priority by which we try to find them.
|
|
||||||
-VALID_VS_VERSIONS="2010 2012 2013 2015 2017"
|
|
||||||
+VALID_VS_VERSIONS="2010 2012 2013 2015 2017 2019"
|
|
||||||
|
|
||||||
VS_DESCRIPTION_2010="Microsoft Visual Studio 2010"
|
|
||||||
VS_VERSION_INTERNAL_2010=100
|
|
||||||
@@ -4346,6 +4346,18 @@ VS_SDK_INSTALLDIR_2017=
|
|
||||||
VS_VS_PLATFORM_NAME_2017="v141"
|
|
||||||
VS_SDK_PLATFORM_NAME_2017=
|
|
||||||
|
|
||||||
+VS_DESCRIPTION_2019="Microsoft Visual Studio 2019 - CURRENTLY NOT WORKING"
|
|
||||||
+VS_VERSION_INTERNAL_2019=141
|
|
||||||
+VS_MSVCR_2019=vcruntime140.dll
|
|
||||||
+VS_MSVCP_2019=msvcp140.dll
|
|
||||||
+VS_ENVVAR_2019="VS150COMNTOOLS"
|
|
||||||
+VS_USE_UCRT_2019="true"
|
|
||||||
+VS_VS_INSTALLDIR_2019="Microsoft Visual Studio/2019"
|
|
||||||
+VS_EDITIONS_2019="Community Professional Enterprise"
|
|
||||||
+VS_SDK_INSTALLDIR_2019=
|
|
||||||
+VS_VS_PLATFORM_NAME_2019="v141"
|
|
||||||
+VS_SDK_PLATFORM_NAME_2019=
|
|
||||||
+
|
|
||||||
################################################################################
|
|
||||||
|
|
||||||
|
|
||||||
@@ -25694,10 +25706,10 @@ $as_echo "$as_me: Valid Visual Studio versions: $VALID_VS_VERSIONS." >&6;}
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
||||||
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -61,7 +33,7 @@ index 60298422f..bdfdd207b 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
@@ -25751,10 +25763,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
@@ -25994,10 +25994,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
||||||
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -74,7 +46,7 @@ index 60298422f..bdfdd207b 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
@@ -25790,8 +25802,6 @@ $as_echo "$as_me: directory within the Visual Studio installation" >&6;}
|
@@ -26033,8 +26033,6 @@ $as_echo "$as_me: directory within the Visual Studio installation" >&6;}
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -83,7 +55,7 @@ index 60298422f..bdfdd207b 100644
|
|||||||
if test "x$VS_COMNTOOLS" != x; then
|
if test "x$VS_COMNTOOLS" != x; then
|
||||||
|
|
||||||
if test "x$VS_ENV_CMD" = x; then
|
if test "x$VS_ENV_CMD" = x; then
|
||||||
@@ -25824,10 +25834,10 @@ $as_echo "$as_me: directory within the Visual Studio installation" >&6;}
|
@@ -26067,10 +26065,10 @@ $as_echo "$as_me: directory within the Visual Studio installation" >&6;}
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
||||||
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -96,7 +68,7 @@ index 60298422f..bdfdd207b 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
@@ -25883,10 +25893,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
@@ -26126,10 +26124,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
||||||
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -109,7 +81,7 @@ index 60298422f..bdfdd207b 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
@@ -25944,10 +25954,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
@@ -26187,10 +26185,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
||||||
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -122,7 +94,7 @@ index 60298422f..bdfdd207b 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
@@ -26002,10 +26012,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
@@ -26245,10 +26243,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
||||||
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -135,7 +107,7 @@ index 60298422f..bdfdd207b 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
@@ -26059,10 +26069,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
@@ -26302,10 +26300,10 @@ $as_echo "$as_me: Warning: None of $VCVARSFILES were found, Visual Studio instal
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5
|
||||||
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
$as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;}
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -149,38 +121,10 @@ index 60298422f..bdfdd207b 100644
|
|||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
diff --git a/common/autoconf/toolchain_windows.m4 b/common/autoconf/toolchain_windows.m4
|
diff --git a/common/autoconf/toolchain_windows.m4 b/common/autoconf/toolchain_windows.m4
|
||||||
index a78f9ac66..0b5efdad2 100644
|
index 9e617c33..f024da1e 100644
|
||||||
--- a/common/autoconf/toolchain_windows.m4
|
--- a/common/autoconf/toolchain_windows.m4
|
||||||
+++ b/common/autoconf/toolchain_windows.m4
|
+++ b/common/autoconf/toolchain_windows.m4
|
||||||
@@ -25,7 +25,7 @@
|
@@ -121,10 +121,10 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
|
||||||
|
|
||||||
################################################################################
|
|
||||||
# The order of these defines the priority by which we try to find them.
|
|
||||||
-VALID_VS_VERSIONS="2010 2012 2013 2015 2017"
|
|
||||||
+VALID_VS_VERSIONS="2010 2012 2013 2015 2017 2019"
|
|
||||||
|
|
||||||
VS_DESCRIPTION_2010="Microsoft Visual Studio 2010"
|
|
||||||
VS_VERSION_INTERNAL_2010=100
|
|
||||||
@@ -83,6 +83,18 @@ VS_SDK_INSTALLDIR_2017=
|
|
||||||
VS_VS_PLATFORM_NAME_2017="v141"
|
|
||||||
VS_SDK_PLATFORM_NAME_2017=
|
|
||||||
|
|
||||||
+VS_DESCRIPTION_2019="Microsoft Visual Studio 2019 - CURRENTLY NOT WORKING"
|
|
||||||
+VS_VERSION_INTERNAL_2019=141
|
|
||||||
+VS_MSVCR_2019=vcruntime140.dll
|
|
||||||
+VS_MSVCP_2019=msvcp140.dll
|
|
||||||
+VS_ENVVAR_2019="VS150COMNTOOLS"
|
|
||||||
+VS_USE_UCRT_2019="true"
|
|
||||||
+VS_VS_INSTALLDIR_2019="Microsoft Visual Studio/2019"
|
|
||||||
+VS_EDITIONS_2019="Community Professional Enterprise"
|
|
||||||
+VS_SDK_INSTALLDIR_2019=
|
|
||||||
+VS_VS_PLATFORM_NAME_2019="v141"
|
|
||||||
+VS_SDK_PLATFORM_NAME_2019=
|
|
||||||
+
|
|
||||||
################################################################################
|
|
||||||
|
|
||||||
AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
|
|
||||||
@@ -107,10 +119,10 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
|
|
||||||
if test -d "$VS_BASE"; then
|
if test -d "$VS_BASE"; then
|
||||||
AC_MSG_NOTICE([Found Visual Studio installation at $VS_BASE using $METHOD])
|
AC_MSG_NOTICE([Found Visual Studio installation at $VS_BASE using $METHOD])
|
||||||
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
|
||||||
@ -193,7 +137,7 @@ index a78f9ac66..0b5efdad2 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for VCVARSFILE in $VCVARSFILES; do
|
for VCVARSFILE in $VCVARSFILES; do
|
||||||
@@ -198,8 +210,6 @@ AC_DEFUN([TOOLCHAIN_FIND_VISUAL_STUDIO_BAT_FILE],
|
@@ -212,8 +212,6 @@ AC_DEFUN([TOOLCHAIN_FIND_VISUAL_STUDIO_BAT_FILE],
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@ -1,27 +0,0 @@
|
|||||||
From a447db8644fe785db481a425fe3efa62cb11122f Mon Sep 17 00:00:00 2001
|
|
||||||
Date: Mon, 25 Apr 2022 17:12:39 +0800
|
|
||||||
Subject: [PATCH] Fix make bugs when git and hg not exist
|
|
||||||
|
|
||||||
---
|
|
||||||
make/common/MakeBase.gmk | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/make/common/MakeBase.gmk b/make/common/MakeBase.gmk
|
|
||||||
index 2ba3d04..c97a42a 100644
|
|
||||||
--- a/make/common/MakeBase.gmk
|
|
||||||
+++ b/make/common/MakeBase.gmk
|
|
||||||
@@ -318,9 +318,9 @@ SCM_TIP_FILECMD := $(PRINTF) "$(SCM):%s" \
|
|
||||||
# Emit the scm:id pair to $@
|
|
||||||
define GetSourceTips
|
|
||||||
$(CD) $(SRC_ROOT) ; \
|
|
||||||
- if [ -d $(SCM_DIR) -a "$(SCM_VERSION)" != "" ] ; then \
|
|
||||||
+ if [ -d "$(SCM_DIR)" -a "$(SCM_VERSION)" != "" ] ; then \
|
|
||||||
$(ID_COMMAND) >> $@ ; \
|
|
||||||
- elif [ -f $(SCM_TIP_FILENAME) ] ; then \
|
|
||||||
+ elif [ -f "$(SCM_TIP_FILENAME)" ] ; then \
|
|
||||||
$(SCM_TIP_FILECMD) >> $@ ; \
|
|
||||||
fi;
|
|
||||||
$(PRINTF) "\n" >> $@
|
|
||||||
--
|
|
||||||
1.8.3.1
|
|
||||||
|
|
||||||
291
fix_wrap_memcpy_undefined_gcc10_3.patch
Normal file
291
fix_wrap_memcpy_undefined_gcc10_3.patch
Normal file
@ -0,0 +1,291 @@
|
|||||||
|
diff --git a/jdk/make/CompileDemos.gmk b/jdk/make/CompileDemos.gmk
|
||||||
|
index 763c968e..6c5eb432 100644
|
||||||
|
--- a/jdk/make/CompileDemos.gmk
|
||||||
|
+++ b/jdk/make/CompileDemos.gmk
|
||||||
|
@@ -250,7 +250,6 @@ define SetupJVMTIDemo
|
||||||
|
SRC := $(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC), \
|
||||||
|
LANG := $$(BUILD_DEMO_JVMTI_$1_LANG), \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CXXFLAGS := $$($1_CXXFLAGS), \
|
||||||
|
LDFLAGS := $(filter-out -incremental:no -opt:ref, $$(LDFLAGS_JDKLIB)), \
|
||||||
|
LDFLAGS_macosx := $$(call SET_EXECUTABLE_ORIGIN), \
|
||||||
|
diff --git a/jdk/make/CompileLaunchers.gmk b/jdk/make/CompileLaunchers.gmk
|
||||||
|
index 29211f83..2ac718fc 100644
|
||||||
|
--- a/jdk/make/CompileLaunchers.gmk
|
||||||
|
+++ b/jdk/make/CompileLaunchers.gmk
|
||||||
|
@@ -512,7 +512,6 @@ $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE, \
|
||||||
|
EXCLUDE_FILES := jni.cpp, \
|
||||||
|
LANG := $(UNPACKEXE_LANG), \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(UNPACKEXE_CFLAGS) $(CXXFLAGS_JDKEXE) \
|
||||||
|
-DFULL, \
|
||||||
|
CFLAGS_release := -DPRODUCT, \
|
||||||
|
diff --git a/jdk/make/lib/Awt2dLibraries.gmk b/jdk/make/lib/Awt2dLibraries.gmk
|
||||||
|
index 71d87c37..9368a9d5 100644
|
||||||
|
--- a/jdk/make/lib/Awt2dLibraries.gmk
|
||||||
|
+++ b/jdk/make/lib/Awt2dLibraries.gmk
|
||||||
|
@@ -52,7 +52,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE, \
|
||||||
|
EXCLUDE_FILES := awt_ImagingLib.c mlib_c_ImageBlendTable.c, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := HIGHEST, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
$(BUILD_LIBMLIB_CFLAGS), \
|
||||||
|
MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \
|
||||||
|
@@ -471,7 +470,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBAWT, \
|
||||||
|
INCLUDE_FILES := $(LIBAWT_FILES), \
|
||||||
|
LANG := $(LIBAWT_LANG), \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_CFLAGS), \
|
||||||
|
ASFLAGS := $(LIBAWT_ASFLAGS), \
|
||||||
|
MAPFILE := $(LIBAWT_MAPFILE), \
|
||||||
|
@@ -633,7 +631,6 @@ ifeq ($(findstring $(OPENJDK_TARGET_OS),windows macosx),)
|
||||||
|
INCLUDE_FILES := $(LIBAWT_XAWT_FILES), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_XAWT_CFLAGS) \
|
||||||
|
$(X_CFLAGS), \
|
||||||
|
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libawt_xawt/mapfile-vers, \
|
||||||
|
@@ -675,7 +672,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS, \
|
||||||
|
SRC := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := HIGHEST, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(filter-out -xc99=%none, $(CFLAGS_JDKLIB)) \
|
||||||
|
-DCMS_DONT_USE_FAST_FLOOR \
|
||||||
|
$(SHARED_LIBRARY_FLAGS) \
|
||||||
|
@@ -743,7 +739,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJPEG, \
|
||||||
|
$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := HIGHEST, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
$(BUILD_LIBJPEG_CLOSED_INCLUDES) \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \
|
||||||
|
@@ -919,7 +914,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER, \
|
||||||
|
EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES) \
|
||||||
|
AccelGlyphCache.c, \
|
||||||
|
LANG := C++, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON), \
|
||||||
|
CXXFLAGS := $(CXXFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON), \
|
||||||
|
OPTIMIZATION := $(LIBFONTMANAGER_OPTIMIZATION), \
|
||||||
|
@@ -1211,7 +1205,6 @@ ifndef BUILD_HEADLESS_ONLY
|
||||||
|
EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) $(GIFLIB_CFLAGS), \
|
||||||
|
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \
|
||||||
|
LDFLAGS := $(LDFLAGS_JDKLIB) \
|
||||||
|
diff --git a/jdk/make/lib/CoreLibraries.gmk b/jdk/make/lib/CoreLibraries.gmk
|
||||||
|
index b444abf9..e43fc2ed 100644
|
||||||
|
--- a/jdk/make/lib/CoreLibraries.gmk
|
||||||
|
+++ b/jdk/make/lib/CoreLibraries.gmk
|
||||||
|
@@ -113,7 +113,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBVERIFY, \
|
||||||
|
INCLUDE_FILES := $(BUILD_LIBVERIFY_SRC), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := $(LIBVERIFY_OPTIMIZATION), \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB), \
|
||||||
|
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libverify/mapfile-vers, \
|
||||||
|
LDFLAGS := $(LDFLAGS_JDKLIB) \
|
||||||
|
@@ -225,7 +224,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJAVA, \
|
||||||
|
EXCLUDE_FILES := $(LIBJAVA_EXCLUDE_FILES), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := HIGH, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
$(LIBJAVA_CFLAGS), \
|
||||||
|
MAPFILE := $(LIBJAVA_MAPFILE), \
|
||||||
|
@@ -287,7 +285,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBZIP, \
|
||||||
|
OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
SRC := $(JDK_TOPDIR)/src/share/native/java/util/zip, \
|
||||||
|
EXCLUDES := $(LIBZIP_EXCLUDES), \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
@@ -329,7 +326,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBUNPACK, \
|
||||||
|
EXCLUDE_FILES := main.cpp, \
|
||||||
|
LANG := C++, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CXXFLAGS_JDKLIB) \
|
||||||
|
-DNO_ZLIB -DUNPACK_JNI -DFULL, \
|
||||||
|
CFLAGS_release := -DPRODUCT, \
|
||||||
|
@@ -442,7 +438,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJLI, \
|
||||||
|
INCLUDE_FILES := $(BUILD_LIBJLI_FILES), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := HIGH, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(LIBJLI_CFLAGS), \
|
||||||
|
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjli/mapfile-vers, \
|
||||||
|
LDFLAGS := $(LDFLAGS_JDKLIB) \
|
||||||
|
@@ -544,7 +539,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBNPT, \
|
||||||
|
SRC := $(JDK_TOPDIR)/src/share/npt $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/npt \
|
||||||
|
-I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt, \
|
||||||
|
diff --git a/jdk/make/lib/NetworkingLibraries.gmk b/jdk/make/lib/NetworkingLibraries.gmk
|
||||||
|
index f826c66d..347c3237 100644
|
||||||
|
--- a/jdk/make/lib/NetworkingLibraries.gmk
|
||||||
|
+++ b/jdk/make/lib/NetworkingLibraries.gmk
|
||||||
|
@@ -65,7 +65,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBNET, \
|
||||||
|
EXCLUDE_FILES := $(LIBNET_EXCLUDE_FILES), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
$(LIBNET_CFLAGS), \
|
||||||
|
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libnet/mapfile-vers, \
|
||||||
|
diff --git a/jdk/make/lib/NioLibraries.gmk b/jdk/make/lib/NioLibraries.gmk
|
||||||
|
index 54c9c29e..6c9c46a3 100644
|
||||||
|
--- a/jdk/make/lib/NioLibraries.gmk
|
||||||
|
+++ b/jdk/make/lib/NioLibraries.gmk
|
||||||
|
@@ -181,7 +181,6 @@ ifeq ($(OPENJDK_TARGET_OS_API), posix)
|
||||||
|
SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch/sctp, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/native/sun/nio/ch/sctp \
|
||||||
|
diff --git a/jdk/make/lib/SecurityLibraries.gmk b/jdk/make/lib/SecurityLibraries.gmk
|
||||||
|
index 10ab8043..5b9ec17f 100644
|
||||||
|
--- a/jdk/make/lib/SecurityLibraries.gmk
|
||||||
|
+++ b/jdk/make/lib/SecurityLibraries.gmk
|
||||||
|
@@ -196,7 +196,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJ2PKCS11, \
|
||||||
|
$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/pkcs11/wrapper, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/native/sun/security/pkcs11 \
|
||||||
|
-I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/pkcs11 \
|
||||||
|
@@ -242,7 +241,6 @@ ifeq ($(ENABLE_INTREE_EC), yes)
|
||||||
|
$(JDK_TOPDIR)/src/share/native/sun/security/ec/impl, \
|
||||||
|
LANG := C++, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(filter-out $(ECC_JNI_SOLSPARC_FILTER), $(CFLAGS_JDKLIB)) \
|
||||||
|
$(BUILD_LIBSUNEC_FLAGS) \
|
||||||
|
-DMP_API_COMPATIBLE -DNSS_ECC_MORE_THAN_SUITE_B, \
|
||||||
|
@@ -300,7 +298,6 @@ ifeq ($(ENABLE_KAE), true)
|
||||||
|
SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/org/openeuler/security/openssl, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||||
|
-I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/org/openeuler/security/openssl, \
|
||||||
|
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libj2kae/mapfile-vers, \
|
||||||
|
diff --git a/jdk/make/lib/ServiceabilityLibraries.gmk b/jdk/make/lib/ServiceabilityLibraries.gmk
|
||||||
|
index 2c80ffc0..19c8601d 100644
|
||||||
|
--- a/jdk/make/lib/ServiceabilityLibraries.gmk
|
||||||
|
+++ b/jdk/make/lib/ServiceabilityLibraries.gmk
|
||||||
|
@@ -83,7 +83,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBDT_SOCKET, \
|
||||||
|
$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/socket, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) -DUSE_MMAP \
|
||||||
|
-I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(OPENJDK_TARGET_OS) \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/transport/socket \
|
||||||
|
@@ -149,7 +148,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJDWP, \
|
||||||
|
SRC := $(JDK_TOPDIR)/src/share/back $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/back, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) -DJDWP_LOGGING \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/transport/export \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/back/export \
|
||||||
|
@@ -255,7 +253,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT, \
|
||||||
|
INCLUDE_FILES := $(LIBINSTRUMENT_FILES), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(LIBINSTRUMENT_CFLAGS) $(CFLAGS_WARNINGS_ARE_ERRORS), \
|
||||||
|
CFLAGS_debug := -DJPLIS_LOGGING, \
|
||||||
|
CFLAGS_release := -DNO_JPLIS_LOGGING, \
|
||||||
|
@@ -379,7 +376,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBHPROF, \
|
||||||
|
SRC := $(BUILD_LIBHPROF_SRC), \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := $(LIBHPROF_OPTIMIZATION), \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) \
|
||||||
|
$(BUILD_LIBHPROF_CFLAGS), \
|
||||||
|
CFLAGS_debug := -DHPROF_LOGGING, \
|
||||||
|
@@ -408,7 +404,6 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJAVA_CRW_DEMO, \
|
||||||
|
SRC := $(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) \
|
||||||
|
-I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo, \
|
||||||
|
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjava_crw_demo/mapfile-vers, \
|
||||||
|
diff --git a/jdk/make/lib/SoundLibraries.gmk b/jdk/make/lib/SoundLibraries.gmk
|
||||||
|
index 0ea9ba84..b59a9462 100644
|
||||||
|
--- a/jdk/make/lib/SoundLibraries.gmk
|
||||||
|
+++ b/jdk/make/lib/SoundLibraries.gmk
|
||||||
|
@@ -201,7 +201,6 @@ ifneq ($(filter jsoundalsa, $(EXTRA_SOUND_JNI_LIBS)), )
|
||||||
|
PLATFORM_API_LinuxOS_ALSA_Ports.c, \
|
||||||
|
LANG := C, \
|
||||||
|
OPTIMIZATION := LOW, \
|
||||||
|
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp, \
|
||||||
|
CFLAGS := $(CFLAGS_JDKLIB) $(ALSA_CFLAGS) \
|
||||||
|
$(LIBJSOUND_CFLAGS) \
|
||||||
|
-DUSE_DAUDIO=TRUE \
|
||||||
|
diff --git a/make/common/NativeCompilation.gmk b/make/common/NativeCompilation.gmk
|
||||||
|
index 2d9bdbee..9586d20e 100644
|
||||||
|
--- a/make/common/NativeCompilation.gmk
|
||||||
|
+++ b/make/common/NativeCompilation.gmk
|
||||||
|
@@ -271,6 +271,7 @@ define SetupNativeCompilation
|
||||||
|
|
||||||
|
# Find all files in the source trees. Sort to remove duplicates.
|
||||||
|
$1_ALL_SRCS := $$(sort $$(call CacheFind,$$($1_SRC)))
|
||||||
|
+
|
||||||
|
# Extract the C/C++ files.
|
||||||
|
$1_EXCLUDE_FILES:=$$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$($1_EXCLUDE_FILES)))
|
||||||
|
$1_INCLUDE_FILES:=$$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$($1_INCLUDE_FILES)))
|
||||||
|
@@ -281,13 +282,20 @@ define SetupNativeCompilation
|
||||||
|
ifneq (,$$(strip $$($1_INCLUDE_FILES)))
|
||||||
|
$1_SRCS := $$(filter $$($1_INCLUDE_FILES),$$($1_SRCS))
|
||||||
|
endif
|
||||||
|
+
|
||||||
|
+ # Pickup extra OPENJDK_TARGET_OS_API and/or OPENJDK_TARGET_OS dependent variables
|
||||||
|
+ # for LDFLAGS and LDFLAGS_SUFFIX
|
||||||
|
+ $1_EXTRA_LDFLAGS:=$$($1_LDFLAGS_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_$(OPENJDK_TARGET_OS))
|
||||||
|
+ $1_EXTRA_LDFLAGS_SUFFIX:=$$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS))
|
||||||
|
+
|
||||||
|
ifeq ($(OPENJDK_TARGET_OS), linux) # only on linux
|
||||||
|
- ifneq ($(OPENJDK_TARGET_CPU_ARCH), aarch64) # not need on the arm arch
|
||||||
|
- ifneq (,$$(strip $$($1_EXTRA_FILES)))
|
||||||
|
- $1_SRCS += $$($1_EXTRA_FILES)
|
||||||
|
+ ifneq ($$(findstring wrap=memcpy, $$($1_LDFLAGS)$$($1_EXTRA_LDFLAGS))$$($1_EXTRA_LDFLAGS_SUFFIX),)
|
||||||
|
+ ifeq ($$(findstring memcpy.cpp, $$($1_SRCS)),)
|
||||||
|
+ $1_SRCS += $(HOTSPOT_TOPDIR)/src/os_cpu/linux_x86/vm/memcpy.cpp
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
+
|
||||||
|
ifeq (,$$($1_SRCS))
|
||||||
|
$$(error No sources found for $1 when looking inside the dirs $$($1_SRC))
|
||||||
|
endif
|
||||||
|
@@ -432,10 +440,6 @@ define SetupNativeCompilation
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
- # Pickup extra OPENJDK_TARGET_OS_API and/or OPENJDK_TARGET_OS dependent variables
|
||||||
|
- # for LDFLAGS and LDFLAGS_SUFFIX
|
||||||
|
- $1_EXTRA_LDFLAGS:=$$($1_LDFLAGS_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_$(OPENJDK_TARGET_OS))
|
||||||
|
- $1_EXTRA_LDFLAGS_SUFFIX:=$$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS))
|
||||||
|
ifneq (,$$($1_REAL_MAPFILE))
|
||||||
|
$1_EXTRA_LDFLAGS += $(call SET_SHARED_LIBRARY_MAPFILE,$$($1_REAL_MAPFILE))
|
||||||
|
endif
|
||||||
@ -289,8 +289,8 @@ index c5ec637a1..125983179 100644
|
|||||||
+ // Search path: <home>/jre/lib/<arch>/<vm>/libopenblas.so
|
+ // Search path: <home>/jre/lib/<arch>/<vm>/libopenblas.so
|
||||||
+ if (jvm_offset >= 0) {
|
+ if (jvm_offset >= 0) {
|
||||||
+ if (jvm_offset + strlen(library_name) + strlen(os::dll_file_extension()) < JVM_MAXPATHLEN) {
|
+ if (jvm_offset + strlen(library_name) + strlen(os::dll_file_extension()) < JVM_MAXPATHLEN) {
|
||||||
+ strncpy(&path[jvm_offset], library_name, strlen(library_name));
|
+ strncpy(&path[jvm_offset], library_name, JVM_MAXPATHLEN - jvm_offset);
|
||||||
+ strncat(&path[jvm_offset], os::dll_file_extension(), strlen(os::dll_file_extension()));
|
+ strncat(path, os::dll_file_extension(), strlen(os::dll_file_extension()));
|
||||||
+ library = (address)os::dll_load(path, err_buf, sizeof(err_buf));
|
+ library = (address)os::dll_load(path, err_buf, sizeof(err_buf));
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
|
|||||||
Binary file not shown.
3640
kae-usability-enhancement.patch
Normal file
3640
kae-usability-enhancement.patch
Normal file
File diff suppressed because it is too large
Load Diff
56
modify_coding_style_and_describe_error.patch
Normal file
56
modify_coding_style_and_describe_error.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
From 9d32c786ff6886bcd4b76e0a80eb19ce602dbe42 Mon Sep 17 00:00:00 2001
|
||||||
|
From: wangkun <wangkun49@huawei.com>
|
||||||
|
Date: Thu, 28 Jul 2022 17:24:52 +0800
|
||||||
|
Subject: [PATCH 3/3] fix xx
|
||||||
|
|
||||||
|
---
|
||||||
|
.../classes/org/openeuler/security/openssl/KAEDigest.java | 6 +++---
|
||||||
|
.../classes/org/openeuler/security/openssl/KAEProvider.java | 2 --
|
||||||
|
jdk/src/solaris/native/java/io/path_util.c | 1 -
|
||||||
|
3 files changed, 3 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEDigest.java b/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEDigest.java
|
||||||
|
index bb5c8681..6ff03241 100644
|
||||||
|
--- a/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEDigest.java
|
||||||
|
+++ b/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEDigest.java
|
||||||
|
@@ -88,9 +88,9 @@ abstract class KAEDigest extends MessageDigestSpi implements Cloneable {
|
||||||
|
private static class DigestContextRef extends PhantomReference<KAEDigest>
|
||||||
|
implements Comparable<DigestContextRef> {
|
||||||
|
|
||||||
|
- private static ReferenceQueue<KAEDigest> referenceQueue = new ReferenceQueue<>();
|
||||||
|
- private static Set<DigestContextRef> referenceList = new ConcurrentSkipListSet<>();
|
||||||
|
- private static boolean disableKaeDispose = Boolean.getBoolean("kae.disableKaeDispose");
|
||||||
|
+ private static final ReferenceQueue<KAEDigest> referenceQueue = new ReferenceQueue<>();
|
||||||
|
+ private static final Set<DigestContextRef> referenceList = new ConcurrentSkipListSet<>();
|
||||||
|
+ private static final boolean disableKaeDispose = Boolean.getBoolean("kae.disableKaeDispose");
|
||||||
|
|
||||||
|
private final long ctxAddress;
|
||||||
|
|
||||||
|
diff --git a/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEProvider.java b/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEProvider.java
|
||||||
|
index 8ba70200..83ed8649 100644
|
||||||
|
--- a/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEProvider.java
|
||||||
|
+++ b/jdk/src/solaris/classes/org/openeuler/security/openssl/KAEProvider.java
|
||||||
|
@@ -104,8 +104,6 @@ public class KAEProvider extends Provider {
|
||||||
|
if (needLog && "true".equalsIgnoreCase(props.getProperty("kae.log"))) {
|
||||||
|
logStart(excp);
|
||||||
|
needLog = false; // Log only once
|
||||||
|
- } else {
|
||||||
|
- KAEProvider.excp = null; // Ignore exception.
|
||||||
|
}
|
||||||
|
if (!"false".equalsIgnoreCase(props.getProperty("kae.md5"))) {
|
||||||
|
putMD5();
|
||||||
|
diff --git a/jdk/src/solaris/native/java/io/path_util.c b/jdk/src/solaris/native/java/io/path_util.c
|
||||||
|
index 8a533f81..4b978206 100644
|
||||||
|
--- a/jdk/src/solaris/native/java/io/path_util.c
|
||||||
|
+++ b/jdk/src/solaris/native/java/io/path_util.c
|
||||||
|
@@ -116,7 +116,6 @@ collapse(char *path)
|
||||||
|
int nc;
|
||||||
|
char **ix;
|
||||||
|
int i, j;
|
||||||
|
- char *p, *q;
|
||||||
|
|
||||||
|
nc = collapsible(names);
|
||||||
|
if (nc < 2) return; /* Nothing to do */
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
@ -146,13 +146,13 @@
|
|||||||
%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 jdk8u332-b09
|
%global revision jdk8u342-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 332
|
%global updatever 342
|
||||||
%global buildver b09
|
%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}
|
||||||
|
|
||||||
@ -583,7 +583,7 @@ exit 0
|
|||||||
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnpt.so
|
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnpt.so
|
||||||
%ifarch %{aarch64}
|
%ifarch %{aarch64}
|
||||||
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2kae.so
|
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2kae.so
|
||||||
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/kaeprovider.conf
|
%{_jvmdir}/%{jredir -- %{?1}}/lib/kaeprovider.conf
|
||||||
%endif
|
%endif
|
||||||
%ifarch %{sa_arches}
|
%ifarch %{sa_arches}
|
||||||
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsaproc.so
|
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsaproc.so
|
||||||
@ -916,7 +916,7 @@ Provides: java-%{javaver}-%{origin}-accessibility%{?1} = %{epoch}:%{version}-%{r
|
|||||||
|
|
||||||
Name: java-%{javaver}-%{origin}
|
Name: java-%{javaver}-%{origin}
|
||||||
Version: %{javaver}.%{updatever}.%{buildver}
|
Version: %{javaver}.%{updatever}.%{buildver}
|
||||||
Release: 2
|
Release: 15
|
||||||
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons
|
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons
|
||||||
# and this change was brought into RHEL-4. java-1.5.0-ibm packages
|
# and this change was brought into RHEL-4. java-1.5.0-ibm packages
|
||||||
# also included the epoch in their virtual provides. This created a
|
# also included the epoch in their virtual provides. This created a
|
||||||
@ -993,7 +993,6 @@ Patch58: Reduce-the-probability-of-the-crash-related-to-ciObj.patch
|
|||||||
Patch62: 8165857.patch
|
Patch62: 8165857.patch
|
||||||
Patch63: 8033552.patch
|
Patch63: 8033552.patch
|
||||||
Patch67: 8165860.patch
|
Patch67: 8165860.patch
|
||||||
Patch68: 8194154.patch
|
|
||||||
Patch70: 8164948.patch
|
Patch70: 8164948.patch
|
||||||
|
|
||||||
# 8u242
|
# 8u242
|
||||||
@ -1044,7 +1043,6 @@ Patch142: 8207160.patch
|
|||||||
Patch144: add-appcds-test-case.patch
|
Patch144: add-appcds-test-case.patch
|
||||||
|
|
||||||
# 8u282
|
# 8u282
|
||||||
Patch146: 8168926.patch
|
|
||||||
Patch147: 8215047.patch
|
Patch147: 8215047.patch
|
||||||
Patch148: 8237894.patch
|
Patch148: 8237894.patch
|
||||||
Patch149: Remove-the-parentheses-around-company-name.patch
|
Patch149: Remove-the-parentheses-around-company-name.patch
|
||||||
@ -1075,13 +1073,11 @@ Patch177: downgrade-symver-of-memcpy-GLIBC.patch
|
|||||||
Patch178: fix-log-bug-enhance-aes-hmac-performance.patch
|
Patch178: fix-log-bug-enhance-aes-hmac-performance.patch
|
||||||
Patch179: keep-the-binary-equal.patch
|
Patch179: keep-the-binary-equal.patch
|
||||||
Patch180: link-option-use-rpath-instead-of-runpath.patch
|
Patch180: link-option-use-rpath-instead-of-runpath.patch
|
||||||
Patch181: remove-gnu-debuglink-when-using-enable-debug-.patch
|
|
||||||
Patch183: revert-windows-bugfix.patch
|
Patch183: revert-windows-bugfix.patch
|
||||||
Patch184: set-vm.vendor-by-configure.patch
|
Patch184: set-vm.vendor-by-configure.patch
|
||||||
Patch185: update-cacerts-and-VerifyCACerts.java-test.patch
|
Patch185: update-cacerts-and-VerifyCACerts.java-test.patch
|
||||||
Patch186: update-to-keep-same-with-master.patch
|
Patch186: update-to-keep-same-with-master.patch
|
||||||
Patch188: 8247691_incorrect_handling_of_VM_exceptions_in_C1_deopt_stub.patch
|
Patch188: 8247691_incorrect_handling_of_VM_exceptions_in_C1_deopt_stub.patch
|
||||||
Patch189: 8266187_Memory_leak_in_appendBootClassPath.patch
|
|
||||||
Patch192: add_kae_implementation_add_default_conf_file.patch
|
Patch192: add_kae_implementation_add_default_conf_file.patch
|
||||||
Patch193: improve_algorithmConstraints_checkAlgorithm_performance.patch
|
Patch193: improve_algorithmConstraints_checkAlgorithm_performance.patch
|
||||||
Patch194: modify_the_default_iteration_time_and_forks_in_the_JMH_of_KAEProvider.patch
|
Patch194: modify_the_default_iteration_time_and_forks_in_the_JMH_of_KAEProvider.patch
|
||||||
@ -1105,7 +1101,6 @@ Patch212: enhance-the-TimeZone-s-path-solution-on-Euler.patch
|
|||||||
Patch214: fix-appcds-s-option-AppCDSLockFile.patch
|
Patch214: fix-appcds-s-option-AppCDSLockFile.patch
|
||||||
Patch215: PS-introduce-UsePSRelaxedForwardee-to-enable-using-r.patch
|
Patch215: PS-introduce-UsePSRelaxedForwardee-to-enable-using-r.patch
|
||||||
Patch216: Parallel-Full-GC-for-G1.patch
|
Patch216: Parallel-Full-GC-for-G1.patch
|
||||||
Patch217: 8202142-jfr-event-io-TestInstrumentation-is-unstable.patch
|
|
||||||
Patch218: 8143251-Thread-suspend-on-VM_G1IncCollectionPause-do.patch
|
Patch218: 8143251-Thread-suspend-on-VM_G1IncCollectionPause-do.patch
|
||||||
Patch219: G1Uncommit-Introduce-G1PeriodGCNotRetry-control-whet.patch
|
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
|
||||||
@ -1121,7 +1116,6 @@ Patch229: downgrade-the-symver-of-fcntl64.patch
|
|||||||
|
|
||||||
# 8u322
|
# 8u322
|
||||||
Patch230: add-system-property-swing.JComboBox.useLegacyMode.patch
|
Patch230: add-system-property-swing.JComboBox.useLegacyMode.patch
|
||||||
Patch231: debuginfo.diz-should-not-contain-the-path-after-unzip.patch
|
|
||||||
Patch232: 8173361-various-crashes-in-JvmtiExport-post_compiled.patch
|
Patch232: 8173361-various-crashes-in-JvmtiExport-post_compiled.patch
|
||||||
Patch233: fix-TestUseCompressedOopsErgo-run-failed.patch
|
Patch233: fix-TestUseCompressedOopsErgo-run-failed.patch
|
||||||
Patch235: fix-testme-Test6929067-run-faild.patch
|
Patch235: fix-testme-Test6929067-run-faild.patch
|
||||||
@ -1133,9 +1127,30 @@ Patch240: 8207011-Remove-uses-of-the-register-storage-class-specifier.patch
|
|||||||
Patch241: 8268819-SA-Remove-libthread_db-dependency-on-Linux.patch
|
Patch241: 8268819-SA-Remove-libthread_db-dependency-on-Linux.patch
|
||||||
|
|
||||||
# 8u332
|
# 8u332
|
||||||
Patch242: fix-make-bugs-when-git-and-hg-not-exist.patch
|
|
||||||
Patch243: Fix-compile-and-runtime-failures-for-minimal1-versio.patch
|
Patch243: Fix-compile-and-runtime-failures-for-minimal1-versio.patch
|
||||||
Patch244: fix_X509TrustManagerImpl_symantec_distrust.patch
|
Patch244: fix_X509TrustManagerImpl_symantec_distrust.patch
|
||||||
|
Patch245: change-sa-jdi.jar-make-file-for-BEP.PATCH
|
||||||
|
Patch246: 7092821-java.security.Provider.getService-is-synchro.patch
|
||||||
|
Patch247: 8173339-AArch64-Fix-minimum-stack-size-computations.patch
|
||||||
|
Patch248: 8067941-TESTBUG-Fix-tests-for-OS-with-64K-page-size.patch
|
||||||
|
|
||||||
|
# 8u342
|
||||||
|
Patch249: Improve_AlgorithmConstraints_checkAlgorithm_performance.patch
|
||||||
|
Patch250: modify_coding_style_and_describe_error.patch
|
||||||
|
Patch251: fix_wrap_memcpy_undefined_gcc10_3.patch
|
||||||
|
Patch252: 8290705_fix_StringConcat_validate_mem_flow_asserts_with_unexpected_userStoreI.patch
|
||||||
|
Patch253: 8143925-enhancing-CounterMode.crypt-for-AESCrypt.patch
|
||||||
|
Patch254: kae-usability-enhancement.patch
|
||||||
|
Patch255: Dynamic-CDS-Archive.patch
|
||||||
|
Patch256: 8202951-Support-default-jsa.patch
|
||||||
|
Patch257: 8200332-Improve-GCM-counting.patch
|
||||||
|
Patch258: dynamic-cds-_header-and-_fd-handles-are-not-free.patch
|
||||||
|
Patch259: fix-dumped-heap-using-jhat-parsing-to-appear-failed-to-resolve-object-id-warning-message.patch
|
||||||
|
Patch260: 8159720-Failure-of-C2-compilation-with-tiered-preven.patch
|
||||||
|
Patch261: revert-fPIC-and-security-compilation-flag-on.patch
|
||||||
|
Patch262: add-configuration-option-of-huawei-internal-version-shown-in-release-file.patch
|
||||||
|
Patch263: The-code-style-is-fixed-and-test-cases-are-added.patch
|
||||||
|
Patch264: 8287109-Distrust-failed-with-CertificateExpired.patch
|
||||||
|
|
||||||
#############################################
|
#############################################
|
||||||
#
|
#
|
||||||
@ -1197,6 +1212,7 @@ BuildRequires: cups-devel
|
|||||||
BuildRequires: desktop-file-utils
|
BuildRequires: desktop-file-utils
|
||||||
# elfutils only are OK for build without AOT
|
# elfutils only are OK for build without AOT
|
||||||
BuildRequires: elfutils-devel
|
BuildRequires: elfutils-devel
|
||||||
|
BuildRequires: elfutils-extra
|
||||||
BuildRequires: fontconfig-devel
|
BuildRequires: fontconfig-devel
|
||||||
BuildRequires: freetype-devel
|
BuildRequires: freetype-devel
|
||||||
BuildRequires: giflib-devel
|
BuildRequires: giflib-devel
|
||||||
@ -1494,7 +1510,6 @@ pushd %{top_level_dir_name}
|
|||||||
%patch62 -p1
|
%patch62 -p1
|
||||||
%patch63 -p1
|
%patch63 -p1
|
||||||
%patch67 -p1
|
%patch67 -p1
|
||||||
%patch68 -p1
|
|
||||||
%patch70 -p1
|
%patch70 -p1
|
||||||
%patch75 -p1
|
%patch75 -p1
|
||||||
%patch83 -p1
|
%patch83 -p1
|
||||||
@ -1533,7 +1548,6 @@ pushd %{top_level_dir_name}
|
|||||||
%patch141 -p1
|
%patch141 -p1
|
||||||
%patch142 -p1
|
%patch142 -p1
|
||||||
%patch144 -p1
|
%patch144 -p1
|
||||||
%patch146 -p1
|
|
||||||
%patch147 -p1
|
%patch147 -p1
|
||||||
%patch148 -p1
|
%patch148 -p1
|
||||||
%patch149 -p1
|
%patch149 -p1
|
||||||
@ -1562,13 +1576,11 @@ pushd %{top_level_dir_name}
|
|||||||
%patch178 -p1
|
%patch178 -p1
|
||||||
%patch179 -p1
|
%patch179 -p1
|
||||||
%patch180 -p1
|
%patch180 -p1
|
||||||
%patch181 -p1
|
|
||||||
%patch183 -p1
|
%patch183 -p1
|
||||||
%patch184 -p1
|
%patch184 -p1
|
||||||
%patch185 -p1
|
%patch185 -p1
|
||||||
%patch186 -p1
|
%patch186 -p1
|
||||||
%patch188 -p1
|
%patch188 -p1
|
||||||
%patch189 -p1
|
|
||||||
%patch192 -p1
|
%patch192 -p1
|
||||||
%patch194 -p1
|
%patch194 -p1
|
||||||
%patch195 -p1
|
%patch195 -p1
|
||||||
@ -1589,7 +1601,6 @@ pushd %{top_level_dir_name}
|
|||||||
%patch214 -p1
|
%patch214 -p1
|
||||||
%patch215 -p1
|
%patch215 -p1
|
||||||
%patch216 -p1
|
%patch216 -p1
|
||||||
%patch217 -p1
|
|
||||||
%patch218 -p1
|
%patch218 -p1
|
||||||
%patch219 -p1
|
%patch219 -p1
|
||||||
%patch220 -p1
|
%patch220 -p1
|
||||||
@ -1601,7 +1612,6 @@ pushd %{top_level_dir_name}
|
|||||||
%patch228 -p1
|
%patch228 -p1
|
||||||
%patch229 -p1
|
%patch229 -p1
|
||||||
%patch230 -p1
|
%patch230 -p1
|
||||||
%patch231 -p1
|
|
||||||
%patch232 -p1
|
%patch232 -p1
|
||||||
%patch233 -p1
|
%patch233 -p1
|
||||||
%patch235 -p1
|
%patch235 -p1
|
||||||
@ -1611,9 +1621,28 @@ pushd %{top_level_dir_name}
|
|||||||
%patch239 -p1
|
%patch239 -p1
|
||||||
%patch240 -p1
|
%patch240 -p1
|
||||||
%patch241 -p1
|
%patch241 -p1
|
||||||
%patch242 -p1
|
|
||||||
%patch243 -p1
|
%patch243 -p1
|
||||||
%patch244 -p1
|
%patch244 -p1
|
||||||
|
%patch245 -p1
|
||||||
|
%patch246 -p1
|
||||||
|
%patch247 -p1
|
||||||
|
%patch248 -p1
|
||||||
|
%patch249 -p1
|
||||||
|
%patch250 -p1
|
||||||
|
%patch251 -p1
|
||||||
|
%patch252 -p1
|
||||||
|
%patch253 -p1
|
||||||
|
%patch254 -p1
|
||||||
|
%patch255 -p1
|
||||||
|
%patch256 -p1
|
||||||
|
%patch257 -p1
|
||||||
|
%patch258 -p1
|
||||||
|
%patch259 -p1
|
||||||
|
%patch260 -p1
|
||||||
|
%patch261 -p1
|
||||||
|
%patch262 -p1
|
||||||
|
%patch263 -p1
|
||||||
|
%patch264 -p1
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# System library fixes
|
# System library fixes
|
||||||
@ -2238,6 +2267,81 @@ cjc.mainProgram(arg)
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Sep 24 2022 kuenking111<wangkun49@huawei.com> - 1:1.8.0.342-b07.15
|
||||||
|
- add 8287109-Distrust-failed-with-CertificateExpired.patch
|
||||||
|
|
||||||
|
* Fri Sep 23 2022 kuenking111<wangkun49@huawei.com> - 1:1.8.0.342-b07.14
|
||||||
|
- add The-code-style-is-fixed-and-test-cases-are-added.patch
|
||||||
|
|
||||||
|
* Thu Sep 22 2022 kuenking111<wangkun49@huawei.com> - 1:1.8.0.342-b07.13
|
||||||
|
- add add-configuration-option-of-huawei-internal-version-shown-in-release-file.patch
|
||||||
|
|
||||||
|
* Wed Sep 21 2022 kuenking111<wangkun49@huawei.com> - 1:1.8.0.342-b07.12
|
||||||
|
- add revert-fPIC-and-security-compilation-flag-on.patch
|
||||||
|
|
||||||
|
* Mon Sep 19 2022 zhoulei<zhoulei103@huawei.com> - 1:1.8.0.342-b07.11
|
||||||
|
- add 8159720-Failure-of-C2-compilation-with-tiered-preven.patch
|
||||||
|
|
||||||
|
* Fri Sep 16 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.10
|
||||||
|
- add fix-dumped-heap-using-jhat-parsing-to-appear-failed-to-resolve-object-id-warning-message.patch
|
||||||
|
|
||||||
|
* Fri Sep 16 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.9
|
||||||
|
- add dynamic-cds-_header-and-_fd-handles-are-not-free.patch
|
||||||
|
|
||||||
|
* Fri Sep 16 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.8
|
||||||
|
- add 8200332-Improve-GCM-counting.patch
|
||||||
|
|
||||||
|
* Fri Sep 16 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.7
|
||||||
|
- add 8202951-Support-default-jsa.patch
|
||||||
|
|
||||||
|
* Thu Sep 15 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.6
|
||||||
|
- add Dynamic-CDS-Archive.patch
|
||||||
|
|
||||||
|
* Thu Sep 15 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.5
|
||||||
|
- add kae-usability-enhancement.patch
|
||||||
|
|
||||||
|
* Thu Sep 15 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.4
|
||||||
|
- add 8143925-enhancing-CounterMode.crypt-for-AESCrypt.patch
|
||||||
|
|
||||||
|
* Fri Aug 5 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.3
|
||||||
|
- add 8290705_fix_StringConcat_validate_mem_flow_asserts_with_unexpected_userStoreI.patch
|
||||||
|
- modified version.txt
|
||||||
|
|
||||||
|
* Thu Jul 28 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.2
|
||||||
|
- add modify_coding_style_and_describe_error.patch
|
||||||
|
- add Improve_AlgorithmConstraints_checkAlgorithm_performance.patch
|
||||||
|
- add fix_wrap_memcpy_undefined_gcc10_3.patch
|
||||||
|
- modified implementation_of_Blas_hotspot_function_in_Intrinsics.patch
|
||||||
|
|
||||||
|
* Thu Jul 28 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.1
|
||||||
|
- del hg git files
|
||||||
|
|
||||||
|
* Fri Jul 22 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.342-b07.0
|
||||||
|
- del 8168926.patch
|
||||||
|
- del 8194154.patch
|
||||||
|
- del 8202142-jfr-event-io-TestInstrumentation-is-unstable.patch
|
||||||
|
- del 8266187_Memory_leak_in_appendBootClassPath.patch
|
||||||
|
- del debuginfo.diz-should-not-contain-the-path-after-unzip.patch
|
||||||
|
- del fix-make-bugs-when-git-and-hg-not-exist.patch
|
||||||
|
- modified 7092821-java.security.Provider.getService-is-synchro.patch
|
||||||
|
- modified 8268819-SA-Remove-libthread_db-dependency-on-Linux.patch
|
||||||
|
- modified fix-log-bug-enhance-aes-hmac-performance.patch
|
||||||
|
|
||||||
|
* Fri Jul 15 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.332-b09.7
|
||||||
|
- del remove-gnu-debuglink-when-using-enable-debug-.patch
|
||||||
|
|
||||||
|
* Mon Jul 4 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.332-b09.6
|
||||||
|
- add 8067941-TESTBUG-Fix-tests-for-OS-with-64K-page-size.patch
|
||||||
|
|
||||||
|
* Mon Jul 4 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.332-b09.5
|
||||||
|
- add 8173339-AArch64-Fix-minimum-stack-size-computations.patch
|
||||||
|
|
||||||
|
* Mon Jul 4 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.332-b09.4
|
||||||
|
- add 7092821-java.security.Provider.getService-is-synchro.patch
|
||||||
|
|
||||||
|
* Thu Jun 30 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.332-b09.3
|
||||||
|
- add change-sa-jdi.jar-make-file-for-BEP.PATCH
|
||||||
|
|
||||||
* Thu Apr 28 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.332-b09.2
|
* Thu Apr 28 2022 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.332-b09.2
|
||||||
- add fix_X509TrustManagerImpl_symantec_distrust.patch
|
- add fix_X509TrustManagerImpl_symantec_distrust.patch
|
||||||
|
|
||||||
@ -2285,7 +2389,7 @@ cjc.mainProgram(arg)
|
|||||||
- deleted Delete-expired-certificate-globalsignr2ca.patch
|
- deleted Delete-expired-certificate-globalsignr2ca.patch
|
||||||
- deleted inline-optimize-for-aarch64.patch
|
- deleted inline-optimize-for-aarch64.patch
|
||||||
|
|
||||||
* Wed Jan 05 2021 noah <hedongbo@huawei.com> - 1:1.8.0.312-b07.11
|
* Tue Jan 05 2021 noah <hedongbo@huawei.com> - 1:1.8.0.312-b07.11
|
||||||
- adapted to newst cjc to fix issue with rpm 4.17
|
- adapted to newst cjc to fix issue with rpm 4.17
|
||||||
|
|
||||||
* Tue Dec 21 2021 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.312-b07.10
|
* Tue Dec 21 2021 kuenking111 <wangkun49@huawei.com> - 1:1.8.0.312-b07.10
|
||||||
|
|||||||
@ -1,68 +0,0 @@
|
|||||||
From 39774b66e6b962a89a02504f08c20b309f9eef1f Mon Sep 17 00:00:00 2001
|
|
||||||
From: zhangyipeng <zhangyipeng7@huawei.com>
|
|
||||||
Date: Thu, 4 Mar 2021 10:10:30 +0800
|
|
||||||
Subject: [PATCH] [Huawei]remove gnu debuglink when using enable debug
|
|
||||||
symbols
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Signed-off-by: Sun Jianye <sunjianye@huawei.com>
|
|
||||||
---
|
|
||||||
hotspot/make/linux/makefiles/jsig.make | 1 -
|
|
||||||
hotspot/make/linux/makefiles/saproc.make | 1 -
|
|
||||||
hotspot/make/linux/makefiles/vm.make | 1 -
|
|
||||||
make/common/NativeCompilation.gmk | 2 +-
|
|
||||||
4 files changed, 1 insertion(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/hotspot/make/linux/makefiles/jsig.make b/hotspot/make/linux/makefiles/jsig.make
|
|
||||||
index 6290db5af..9838a50aa 100644
|
|
||||||
--- a/hotspot/make/linux/makefiles/jsig.make
|
|
||||||
+++ b/hotspot/make/linux/makefiles/jsig.make
|
|
||||||
@@ -63,7 +63,6 @@ $(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
|
|
||||||
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
|
|
||||||
ifneq ($(STRIP_POLICY),no_strip)
|
|
||||||
$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO)
|
|
||||||
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
|
|
||||||
endif
|
|
||||||
ifeq ($(STRIP_POLICY),all_strip)
|
|
||||||
$(QUIETLY) $(STRIP) $@
|
|
||||||
diff --git a/hotspot/make/linux/makefiles/saproc.make b/hotspot/make/linux/makefiles/saproc.make
|
|
||||||
index ffc0ec5ce..dfeb254da 100644
|
|
||||||
--- a/hotspot/make/linux/makefiles/saproc.make
|
|
||||||
+++ b/hotspot/make/linux/makefiles/saproc.make
|
|
||||||
@@ -107,7 +107,6 @@ $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
|
|
||||||
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
|
|
||||||
ifneq ($(STRIP_POLICY),no_strip)
|
|
||||||
$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO)
|
|
||||||
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@
|
|
||||||
endif
|
|
||||||
ifeq ($(STRIP_POLICY),all_strip)
|
|
||||||
$(QUIETLY) $(STRIP) $@
|
|
||||||
diff --git a/hotspot/make/linux/makefiles/vm.make b/hotspot/make/linux/makefiles/vm.make
|
|
||||||
index 1985db071..408b0cc9d 100644
|
|
||||||
--- a/hotspot/make/linux/makefiles/vm.make
|
|
||||||
+++ b/hotspot/make/linux/makefiles/vm.make
|
|
||||||
@@ -359,7 +359,6 @@ $(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
|
|
||||||
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
|
|
||||||
ifneq ($(STRIP_POLICY),no_strip)
|
|
||||||
$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO)
|
|
||||||
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
|
|
||||||
endif
|
|
||||||
ifeq ($(STRIP_POLICY),all_strip)
|
|
||||||
$(QUIETLY) $(STRIP) $@
|
|
||||||
diff --git a/make/common/NativeCompilation.gmk b/make/common/NativeCompilation.gmk
|
|
||||||
index 9980e8ab9..4fa9f14cf 100644
|
|
||||||
--- a/make/common/NativeCompilation.gmk
|
|
||||||
+++ b/make/common/NativeCompilation.gmk
|
|
||||||
@@ -487,7 +487,7 @@ define SetupNativeCompilation
|
|
||||||
$$($1_DEBUGINFO_FILES): $$($1_TARGET)
|
|
||||||
$(RM) $$@
|
|
||||||
$(OBJCOPY) --only-keep-debug $$< $$@
|
|
||||||
- $(CD) $$(@D) && $(OBJCOPY) --add-gnu-debuglink=$$(@F) $$<
|
|
||||||
+ $(CD) $$(@D)
|
|
||||||
$(TOUCH) $$@
|
|
||||||
endif
|
|
||||||
else ifeq ($(OPENJDK_TARGET_OS), aix)
|
|
||||||
--
|
|
||||||
2.19.0
|
|
||||||
|
|
||||||
60
revert-fPIC-and-security-compilation-flag-on.patch
Normal file
60
revert-fPIC-and-security-compilation-flag-on.patch
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
From 9ffc530e0d34086e68c87306ca0410e5847812d6 Mon Sep 17 00:00:00 2001
|
||||||
|
Date: Wed, 21 Sep 2022 09:53:14 +0800
|
||||||
|
Subject: revert fPIC and security compilation flag on
|
||||||
|
|
||||||
|
---
|
||||||
|
common/autoconf/flags.m4 | 6 +-----
|
||||||
|
common/autoconf/generated-configure.sh | 6 +-----
|
||||||
|
hotspot/make/pic.make | 2 +-
|
||||||
|
3 files changed, 3 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/common/autoconf/flags.m4 b/common/autoconf/flags.m4
|
||||||
|
index 69bea78d..71703a15 100644
|
||||||
|
--- a/common/autoconf/flags.m4
|
||||||
|
+++ b/common/autoconf/flags.m4
|
||||||
|
@@ -807,11 +807,7 @@ AC_DEFUN_ONCE([FLAGS_SETUP_COMPILER_FLAGS_FOR_JDK],
|
||||||
|
LDFLAGS_JDKEXE="$LDFLAGS_JDKEXE -Xlinker --allow-shlib-undefined"
|
||||||
|
fi
|
||||||
|
if test "x$TOOLCHAIN_TYPE" = xgcc; then
|
||||||
|
- # Enabling pie on 32 bit builds prevents the JVM from allocating a continuous
|
||||||
|
- # java heap.
|
||||||
|
- if test "x$OPENJDK_TARGET_CPU_BITS" != "x32"; then
|
||||||
|
- LDFLAGS_JDKEXE="$LDFLAGS_JDKEXE -pie"
|
||||||
|
- fi
|
||||||
|
+ LDFLAGS_JDKEXE="$LDFLAGS_JDKEXE -pie"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
AC_SUBST(LDFLAGS_JDKLIB)
|
||||||
|
diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh
|
||||||
|
index f0e49f50..53e6cf18 100644
|
||||||
|
--- a/common/autoconf/generated-configure.sh
|
||||||
|
+++ b/common/autoconf/generated-configure.sh
|
||||||
|
@@ -43068,11 +43068,7 @@ $as_echo "$supports" >&6; }
|
||||||
|
LDFLAGS_JDKEXE="$LDFLAGS_JDKEXE -Xlinker --allow-shlib-undefined"
|
||||||
|
fi
|
||||||
|
if test "x$TOOLCHAIN_TYPE" = xgcc; then
|
||||||
|
- # Enabling pie on 32 bit builds prevents the JVM from allocating a continuous
|
||||||
|
- # java heap.
|
||||||
|
- if test "x$OPENJDK_TARGET_CPU_BITS" != "x32"; then
|
||||||
|
- LDFLAGS_JDKEXE="$LDFLAGS_JDKEXE -pie"
|
||||||
|
- fi
|
||||||
|
+ LDFLAGS_JDKEXE="$LDFLAGS_JDKEXE -pie"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
diff --git a/hotspot/make/pic.make b/hotspot/make/pic.make
|
||||||
|
index 0e61ad93..3d85546c 100644
|
||||||
|
--- a/hotspot/make/pic.make
|
||||||
|
+++ b/hotspot/make/pic.make
|
||||||
|
@@ -30,7 +30,7 @@ include $(GAMMADIR)/make/scm.make
|
||||||
|
|
||||||
|
ifneq ($(OSNAME), windows)
|
||||||
|
ifndef LP64
|
||||||
|
- PARTIAL_NONPIC=1
|
||||||
|
+ PARTIAL_NONPIC=0
|
||||||
|
endif
|
||||||
|
PIC_ARCH = ppc arm
|
||||||
|
ifneq ("$(filter $(PIC_ARCH),$(BUILDARCH))","")
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user