Updated to security jdk8u121-b14
This commit is contained in:
parent
a4eab871ae
commit
edf0421b2a
2
.gitignore
vendored
2
.gitignore
vendored
@ -66,3 +66,5 @@
|
|||||||
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u102-b14.tar.xz
|
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u102-b14.tar.xz
|
||||||
/aarch64-port-jdk8u-aarch64-jdk8u111-b16.tar.xz
|
/aarch64-port-jdk8u-aarch64-jdk8u111-b16.tar.xz
|
||||||
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u111-b16.tar.xz
|
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u111-b16.tar.xz
|
||||||
|
/openjdk8-forests-latest-aarch64-aarch64-jdk8u121-b14.tar.xz
|
||||||
|
/openjdk8-forests-latest-shenandoah-aarch64-shenandoah-jdk8u121-b14.tar.xz
|
||||||
|
@ -1,45 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User dsamersoff
|
|
||||||
# Date 1403087398 25200
|
|
||||||
# Wed Jun 18 03:29:58 2014 -0700
|
|
||||||
# Node ID 13411144d46b50d0087f35eca2b8e827aae558f1
|
|
||||||
# Parent 10c9f8461c297a200ef57970c1f4c32d4081d790
|
|
||||||
8044762, PR2960: com/sun/jdi/OptionTest.java test time out
|
|
||||||
Summary: gdata could be NULL in debugInit_exit
|
|
||||||
Reviewed-by: dcubed
|
|
||||||
|
|
||||||
diff -r 10c9f8461c29 -r 13411144d46b src/share/back/debugInit.c
|
|
||||||
--- openjdk/jdk/src/share/back/debugInit.c Fri May 20 19:42:05 2016 +0100
|
|
||||||
+++ openjdk/jdk/src/share/back/debugInit.c Wed Jun 18 03:29:58 2014 -0700
|
|
||||||
@@ -1307,22 +1307,26 @@
|
|
||||||
if ( error != JVMTI_ERROR_NONE ) {
|
|
||||||
exit_code = 1;
|
|
||||||
if ( docoredump ) {
|
|
||||||
+ LOG_MISC(("Dumping core as requested by command line"));
|
|
||||||
finish_logging(exit_code);
|
|
||||||
abort();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+
|
|
||||||
if ( msg==NULL ) {
|
|
||||||
msg = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
LOG_MISC(("Exiting with error %s(%d): %s", jvmtiErrorText(error), error, msg));
|
|
||||||
|
|
||||||
- gdata->vmDead = JNI_TRUE;
|
|
||||||
+ if (gdata != NULL) {
|
|
||||||
+ gdata->vmDead = JNI_TRUE;
|
|
||||||
|
|
||||||
- /* Let's try and cleanup the JVMTI, if we even have one */
|
|
||||||
- if ( gdata->jvmti != NULL ) {
|
|
||||||
- /* Dispose of jvmti (gdata->jvmti becomes NULL) */
|
|
||||||
- disposeEnvironment(gdata->jvmti);
|
|
||||||
+ /* Let's try and cleanup the JVMTI, if we even have one */
|
|
||||||
+ if ( gdata->jvmti != NULL ) {
|
|
||||||
+ /* Dispose of jvmti (gdata->jvmti becomes NULL) */
|
|
||||||
+ disposeEnvironment(gdata->jvmti);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Finish up logging. We reach here if JDWP is doing the exiting. */
|
|
@ -1,123 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User dsamersoff
|
|
||||||
# Date 1409228402 25200
|
|
||||||
# Thu Aug 28 05:20:02 2014 -0700
|
|
||||||
# Node ID f4c9545cd8a56a5fab74c95de3573623ba2b83c4
|
|
||||||
# Parent 13411144d46b50d0087f35eca2b8e827aae558f1
|
|
||||||
8049226, PR2960: com/sun/jdi/OptionTest.java test times out again
|
|
||||||
Summary: Don't call jni_FatalError if transport initialization fails
|
|
||||||
Reviewed-by: sspitsyn, sla
|
|
||||||
|
|
||||||
diff -r 13411144d46b -r f4c9545cd8a5 src/share/back/debugInit.c
|
|
||||||
--- openjdk/jdk/src/share/back/debugInit.c Wed Jun 18 03:29:58 2014 -0700
|
|
||||||
+++ openjdk/jdk/src/share/back/debugInit.c Thu Aug 28 05:20:02 2014 -0700
|
|
||||||
@@ -1013,7 +1013,7 @@
|
|
||||||
atexit_finish_logging(void)
|
|
||||||
{
|
|
||||||
/* Normal exit(0) (not _exit()) may only reach here */
|
|
||||||
- finish_logging(0); /* Only first call matters */
|
|
||||||
+ finish_logging(); /* Only first call matters */
|
|
||||||
}
|
|
||||||
|
|
||||||
static jboolean
|
|
||||||
@@ -1301,43 +1301,49 @@
|
|
||||||
void
|
|
||||||
debugInit_exit(jvmtiError error, const char *msg)
|
|
||||||
{
|
|
||||||
- int exit_code = 0;
|
|
||||||
+ enum exit_codes { EXIT_NO_ERRORS = 0, EXIT_JVMTI_ERROR = 1, EXIT_TRANSPORT_ERROR = 2 };
|
|
||||||
|
|
||||||
- /* Pick an error code */
|
|
||||||
- if ( error != JVMTI_ERROR_NONE ) {
|
|
||||||
- exit_code = 1;
|
|
||||||
- if ( docoredump ) {
|
|
||||||
- LOG_MISC(("Dumping core as requested by command line"));
|
|
||||||
- finish_logging(exit_code);
|
|
||||||
- abort();
|
|
||||||
- }
|
|
||||||
+ // Prepare to exit. Log error and finish logging
|
|
||||||
+ LOG_MISC(("Exiting with error %s(%d): %s", jvmtiErrorText(error), error,
|
|
||||||
+ ((msg == NULL) ? "" : msg)));
|
|
||||||
+
|
|
||||||
+ // coredump requested by command line. Keep JVMTI data dirty
|
|
||||||
+ if (error != JVMTI_ERROR_NONE && docoredump) {
|
|
||||||
+ LOG_MISC(("Dumping core as requested by command line"));
|
|
||||||
+ finish_logging();
|
|
||||||
+ abort();
|
|
||||||
}
|
|
||||||
|
|
||||||
- if ( msg==NULL ) {
|
|
||||||
- msg = "";
|
|
||||||
- }
|
|
||||||
+ finish_logging();
|
|
||||||
|
|
||||||
- LOG_MISC(("Exiting with error %s(%d): %s", jvmtiErrorText(error), error, msg));
|
|
||||||
-
|
|
||||||
+ // Cleanup the JVMTI if we have one
|
|
||||||
if (gdata != NULL) {
|
|
||||||
gdata->vmDead = JNI_TRUE;
|
|
||||||
-
|
|
||||||
- /* Let's try and cleanup the JVMTI, if we even have one */
|
|
||||||
- if ( gdata->jvmti != NULL ) {
|
|
||||||
- /* Dispose of jvmti (gdata->jvmti becomes NULL) */
|
|
||||||
+ if (gdata->jvmti != NULL) {
|
|
||||||
+ // Dispose of jvmti (gdata->jvmti becomes NULL)
|
|
||||||
disposeEnvironment(gdata->jvmti);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- /* Finish up logging. We reach here if JDWP is doing the exiting. */
|
|
||||||
- finish_logging(exit_code); /* Only first call matters */
|
|
||||||
-
|
|
||||||
- /* Let's give the JNI a FatalError if non-exit 0, which is historic way */
|
|
||||||
- if ( exit_code != 0 ) {
|
|
||||||
- JNIEnv *env = NULL;
|
|
||||||
- jniFatalError(env, msg, error, exit_code);
|
|
||||||
+ // We are here with no errors. Kill entire process and exit with zero exit code
|
|
||||||
+ if (error == JVMTI_ERROR_NONE) {
|
|
||||||
+ forceExit(EXIT_NO_ERRORS);
|
|
||||||
+ return;
|
|
||||||
}
|
|
||||||
|
|
||||||
- /* Last chance to die, this kills the entire process. */
|
|
||||||
- forceExit(exit_code);
|
|
||||||
+ // No transport initilized.
|
|
||||||
+ // As we don't have any details here exiting with separate exit code
|
|
||||||
+ if (error == AGENT_ERROR_TRANSPORT_INIT) {
|
|
||||||
+ forceExit(EXIT_TRANSPORT_ERROR);
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ // We have JVMTI error. Call hotspot jni_FatalError handler
|
|
||||||
+ jniFatalError(NULL, msg, error, EXIT_JVMTI_ERROR);
|
|
||||||
+
|
|
||||||
+ // hotspot calls os:abort() so we should never reach code below,
|
|
||||||
+ // but guard against possible hotspot changes
|
|
||||||
+
|
|
||||||
+ // Last chance to die, this kills the entire process.
|
|
||||||
+ forceExit(EXIT_JVMTI_ERROR);
|
|
||||||
}
|
|
||||||
diff -r 13411144d46b -r f4c9545cd8a5 src/share/back/log_messages.c
|
|
||||||
--- openjdk/jdk/src/share/back/log_messages.c Wed Jun 18 03:29:58 2014 -0700
|
|
||||||
+++ openjdk/jdk/src/share/back/log_messages.c Thu Aug 28 05:20:02 2014 -0700
|
|
||||||
@@ -230,7 +230,7 @@
|
|
||||||
|
|
||||||
/* Finish up logging, flush output to the logfile. */
|
|
||||||
void
|
|
||||||
-finish_logging(int exit_code)
|
|
||||||
+finish_logging()
|
|
||||||
{
|
|
||||||
#ifdef JDWP_LOGGING
|
|
||||||
MUTEX_LOCK(my_mutex);
|
|
||||||
diff -r 13411144d46b -r f4c9545cd8a5 src/share/back/log_messages.h
|
|
||||||
--- openjdk/jdk/src/share/back/log_messages.h Wed Jun 18 03:29:58 2014 -0700
|
|
||||||
+++ openjdk/jdk/src/share/back/log_messages.h Thu Aug 28 05:20:02 2014 -0700
|
|
||||||
@@ -29,7 +29,7 @@
|
|
||||||
/* LOG: Must be called like: LOG_category(("anything")) or LOG_category((format,args)) */
|
|
||||||
|
|
||||||
void setup_logging(const char *, unsigned);
|
|
||||||
-void finish_logging(int);
|
|
||||||
+void finish_logging();
|
|
||||||
|
|
||||||
#define LOG_NULL ((void)0)
|
|
||||||
|
|
@ -1,47 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User aph
|
|
||||||
# Date 1461121375 -3600
|
|
||||||
# Wed Apr 20 04:02:55 2016 +0100
|
|
||||||
# Node ID 5605c859f0ec47d6f507cc83e783554a4210ccf6
|
|
||||||
# Parent 7458e5178c8646a9b4f76ac3d13b222abed3f16f
|
|
||||||
8154210: Zero: Better byte behaviour
|
|
||||||
Summary: Complete support for 8132051 on Zero and fix failure on 64-bit big-endian systems
|
|
||||||
Reviewed-by: andrew, chrisphi
|
|
||||||
|
|
||||||
diff -r 7458e5178c86 -r 5605c859f0ec src/cpu/zero/vm/cppInterpreter_zero.cpp
|
|
||||||
--- openjdk/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Tue May 17 03:03:36 2016 +0100
|
|
||||||
+++ openjdk/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Wed Apr 20 04:02:55 2016 +0100
|
|
||||||
@@ -220,9 +220,16 @@
|
|
||||||
// Push our result
|
|
||||||
for (int i = 0; i < result_slots; i++) {
|
|
||||||
// Adjust result to smaller
|
|
||||||
- intptr_t res = result[-i];
|
|
||||||
+ union {
|
|
||||||
+ intptr_t res;
|
|
||||||
+ jint res_jint;
|
|
||||||
+ };
|
|
||||||
+ res = result[-i];
|
|
||||||
if (result_slots == 1) {
|
|
||||||
- res = narrow(method->result_type(), res);
|
|
||||||
+ BasicType t = method->result_type();
|
|
||||||
+ if (is_subword_type(t)) {
|
|
||||||
+ res_jint = (jint)narrow(t, res_jint);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
stack->push(res);
|
|
||||||
}
|
|
||||||
diff -r 7458e5178c86 -r 5605c859f0ec src/share/vm/interpreter/bytecodeInterpreter.cpp
|
|
||||||
--- openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Tue May 17 03:03:36 2016 +0100
|
|
||||||
+++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Wed Apr 20 04:02:55 2016 +0100
|
|
||||||
@@ -593,8 +593,9 @@
|
|
||||||
/* 0xDC */ &&opc_default, &&opc_default, &&opc_default, &&opc_default,
|
|
||||||
|
|
||||||
/* 0xE0 */ &&opc_default, &&opc_default, &&opc_default, &&opc_default,
|
|
||||||
-/* 0xE4 */ &&opc_default, &&opc_fast_aldc, &&opc_fast_aldc_w, &&opc_return_register_finalizer,
|
|
||||||
-/* 0xE8 */ &&opc_invokehandle,&&opc_default, &&opc_default, &&opc_default,
|
|
||||||
+/* 0xE4 */ &&opc_default, &&opc_default, &&opc_fast_aldc, &&opc_fast_aldc_w,
|
|
||||||
+/* 0xE8 */ &&opc_return_register_finalizer,
|
|
||||||
+ &&opc_invokehandle, &&opc_default, &&opc_default,
|
|
||||||
/* 0xEC */ &&opc_default, &&opc_default, &&opc_default, &&opc_default,
|
|
||||||
|
|
||||||
/* 0xF0 */ &&opc_default, &&opc_default, &&opc_default, &&opc_default,
|
|
@ -1,32 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User simonis
|
|
||||||
# Date 1466155884 -7200
|
|
||||||
# Fri Jun 17 11:31:24 2016 +0200
|
|
||||||
# Node ID 74081c30fede694b547c8b3386b9887ff14e8775
|
|
||||||
# Parent 3fc29347b27fdd2075e6ec6d80bb26ab2bf667c1
|
|
||||||
8158260, PR2991, RH1341258: PPC64: unaligned Unsafe.getInt can lead to the generation of illegal instructions
|
|
||||||
Summary: Adjust instruction generation.
|
|
||||||
Reviewed-by: goetz
|
|
||||||
Contributed-by: gromero@linux.vnet.ibm.com, horii@jp.ibm.com
|
|
||||||
|
|
||||||
diff -r 3fc29347b27f -r 74081c30fede src/cpu/ppc/vm/ppc.ad
|
|
||||||
--- openjdk/hotspot/src/cpu/ppc/vm/ppc.ad Fri May 20 19:42:15 2016 +0100
|
|
||||||
+++ openjdk/hotspot/src/cpu/ppc/vm/ppc.ad Fri Jun 17 11:31:24 2016 +0200
|
|
||||||
@@ -5461,7 +5461,7 @@
|
|
||||||
%}
|
|
||||||
|
|
||||||
// Match loading integer and casting it to long.
|
|
||||||
-instruct loadI2L(iRegLdst dst, memory mem) %{
|
|
||||||
+instruct loadI2L(iRegLdst dst, memoryAlg4 mem) %{
|
|
||||||
match(Set dst (ConvI2L (LoadI mem)));
|
|
||||||
predicate(_kids[0]->_leaf->as_Load()->is_unordered());
|
|
||||||
ins_cost(MEMORY_REF_COST);
|
|
||||||
@@ -5477,7 +5477,7 @@
|
|
||||||
%}
|
|
||||||
|
|
||||||
// Match loading integer and casting it to long - acquire.
|
|
||||||
-instruct loadI2L_ac(iRegLdst dst, memory mem) %{
|
|
||||||
+instruct loadI2L_ac(iRegLdst dst, memoryAlg4 mem) %{
|
|
||||||
match(Set dst (ConvI2L (LoadI mem)));
|
|
||||||
ins_cost(3*MEMORY_REF_COST);
|
|
||||||
|
|
@ -1,115 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User thartmann
|
|
||||||
# Date 1468206230 -3600
|
|
||||||
# Mon Jul 11 04:03:50 2016 +0100
|
|
||||||
# Node ID 7c89f7f3f2c57d64970cc2ae3a81d24765830118
|
|
||||||
# Parent 4b40867e627dd9043bc67a4795caa9834ef69478
|
|
||||||
8159244, PR3074: Partially initialized string object created by C2's string concat optimization may escape
|
|
||||||
Summary: Emit release barrier after String creation to prevent partially initialized object from escaping.
|
|
||||||
Reviewed-by: kvn
|
|
||||||
|
|
||||||
diff -r 4b40867e627d -r 7c89f7f3f2c5 src/share/vm/opto/stringopts.cpp
|
|
||||||
--- openjdk/hotspot/src/share/vm/opto/stringopts.cpp Fri Jun 17 11:31:24 2016 +0200
|
|
||||||
+++ openjdk/hotspot/src/share/vm/opto/stringopts.cpp Mon Jul 11 04:03:50 2016 +0100
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/*
|
|
||||||
- * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
+ * Copyright (c) 2009, 2016, 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
|
|
||||||
@@ -1640,6 +1640,12 @@
|
|
||||||
kit.store_String_length(kit.control(), result, length);
|
|
||||||
}
|
|
||||||
kit.store_String_value(kit.control(), result, char_array);
|
|
||||||
+
|
|
||||||
+ // The value field is final. Emit a barrier here to ensure that the effect
|
|
||||||
+ // of the initialization is committed to memory before any code publishes
|
|
||||||
+ // a reference to the newly constructed object (see Parse::do_exits()).
|
|
||||||
+ assert(AllocateNode::Ideal_allocation(result, _gvn) != NULL, "should be newly allocated");
|
|
||||||
+ kit.insert_mem_bar(Op_MemBarRelease, result);
|
|
||||||
} else {
|
|
||||||
result = C->top();
|
|
||||||
}
|
|
||||||
diff -r 4b40867e627d -r 7c89f7f3f2c5 test/compiler/stringopts/TestStringObjectInitialization.java
|
|
||||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
|
|
||||||
+++ openjdk/hotspot/test/compiler/stringopts/TestStringObjectInitialization.java Mon Jul 11 04:03:50 2016 +0100
|
|
||||||
@@ -0,0 +1,78 @@
|
|
||||||
+/*
|
|
||||||
+ * Copyright (c) 2016, 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 java.util.Arrays;
|
|
||||||
+
|
|
||||||
+/*
|
|
||||||
+ * @test
|
|
||||||
+ * @bug 8159244
|
|
||||||
+ * @requires vm.gc == "Parallel" | vm.gc == "null"
|
|
||||||
+ * @summary Verifies that no partially initialized String object escapes from
|
|
||||||
+ * C2's String concat optimization in a highly concurrent setting.
|
|
||||||
+ * This test triggers the bug in about 1 out of 10 runs.
|
|
||||||
+ * @compile -XDstringConcat=inline TestStringObjectInitialization.java
|
|
||||||
+ * @run main/othervm/timeout=300 -XX:+IgnoreUnrecognizedVMOptions -XX:-UseCompressedOops -XX:-CompactStrings
|
|
||||||
+ * -XX:-UseG1GC -XX:+UseParallelGC TestStringObjectInitialization
|
|
||||||
+ */
|
|
||||||
+public class TestStringObjectInitialization {
|
|
||||||
+
|
|
||||||
+ String myString;
|
|
||||||
+
|
|
||||||
+ public static void main(String[] args) throws Exception {
|
|
||||||
+ TestStringObjectInitialization t = new TestStringObjectInitialization();
|
|
||||||
+ // Create some threads that concurrently update 'myString'
|
|
||||||
+ for (int i = 0; i < 100; ++i) {
|
|
||||||
+ (new Thread(new Runner(t))).start();
|
|
||||||
+ }
|
|
||||||
+ Thread last = new Thread(new Runner(t));
|
|
||||||
+ last.start();
|
|
||||||
+ last.join();
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ private void add(String message) {
|
|
||||||
+ // String escapes to other threads here
|
|
||||||
+ myString += message;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ public void run(String s, String[] sArray) {
|
|
||||||
+ // Trigger C2's string concatenation optimization
|
|
||||||
+ add(s + Arrays.toString(sArray) + " const ");
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+class Runner implements Runnable {
|
|
||||||
+ private TestStringObjectInitialization test;
|
|
||||||
+
|
|
||||||
+ public Runner(TestStringObjectInitialization t) {
|
|
||||||
+ test = t;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ public void run(){
|
|
||||||
+ String[] array = {"a", "b", "c"};
|
|
||||||
+ for (int i = 0; i < 10000; ++i) {
|
|
||||||
+ test.run("a", array);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
@ -1,7 +1,7 @@
|
|||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
|
diff --git a/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp b/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
|
||||||
@@ -2659,7 +2659,7 @@ void CFLS_LAB::get_from_global_pool(size
|
@@ -2659,7 +2659,7 @@
|
||||||
if (ResizeOldPLAB && CMSOldPLABResizeQuicker) {
|
if (ResizeOldPLAB && CMSOldPLABResizeQuicker) {
|
||||||
size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks);
|
size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks);
|
||||||
n_blks += CMSOldPLABReactivityFactor*multiple*n_blks;
|
n_blks += CMSOldPLABReactivityFactor*multiple*n_blks;
|
||||||
@ -10,10 +10,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compact
|
|||||||
}
|
}
|
||||||
assert(n_blks > 0, "Error");
|
assert(n_blks > 0, "Error");
|
||||||
_cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl);
|
_cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl);
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
|
diff --git a/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp b/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
|
||||||
@@ -957,7 +957,7 @@ void ConcurrentMarkSweepGeneration::comp
|
@@ -957,7 +957,7 @@
|
||||||
if (free_percentage < desired_free_percentage) {
|
if (free_percentage < desired_free_percentage) {
|
||||||
size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage));
|
size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage));
|
||||||
assert(desired_capacity >= capacity(), "invalid expansion size");
|
assert(desired_capacity >= capacity(), "invalid expansion size");
|
||||||
@ -22,7 +22,7 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurr
|
|||||||
if (PrintGCDetails && Verbose) {
|
if (PrintGCDetails && Verbose) {
|
||||||
size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage));
|
size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage));
|
||||||
gclog_or_tty->print_cr("\nFrom compute_new_size: ");
|
gclog_or_tty->print_cr("\nFrom compute_new_size: ");
|
||||||
@@ -6575,7 +6575,7 @@ void CMSCollector::reset(bool asynch) {
|
@@ -6577,7 +6577,7 @@
|
||||||
HeapWord* curAddr = _markBitMap.startWord();
|
HeapWord* curAddr = _markBitMap.startWord();
|
||||||
while (curAddr < _markBitMap.endWord()) {
|
while (curAddr < _markBitMap.endWord()) {
|
||||||
size_t remaining = pointer_delta(_markBitMap.endWord(), curAddr);
|
size_t remaining = pointer_delta(_markBitMap.endWord(), curAddr);
|
||||||
@ -31,7 +31,7 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurr
|
|||||||
_markBitMap.clear_large_range(chunk);
|
_markBitMap.clear_large_range(chunk);
|
||||||
if (ConcurrentMarkSweepThread::should_yield() &&
|
if (ConcurrentMarkSweepThread::should_yield() &&
|
||||||
!foregroundGCIsActive() &&
|
!foregroundGCIsActive() &&
|
||||||
@@ -6873,7 +6873,7 @@ void CMSMarkStack::expand() {
|
@@ -6875,7 +6875,7 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Double capacity if possible
|
// Double capacity if possible
|
||||||
@ -40,10 +40,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurr
|
|||||||
// Do not give up existing stack until we have managed to
|
// Do not give up existing stack until we have managed to
|
||||||
// get the double capacity that we desired.
|
// get the double capacity that we desired.
|
||||||
ReservedSpace rs(ReservedSpace::allocation_align_size_up(
|
ReservedSpace rs(ReservedSpace::allocation_align_size_up(
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
|
diff --git a/src/share/vm/gc_implementation/g1/concurrentMark.cpp b/src/share/vm/gc_implementation/g1/concurrentMark.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
|
||||||
@@ -3902,7 +3902,7 @@ void CMTask::drain_local_queue(bool part
|
@@ -3903,7 +3903,7 @@
|
||||||
// of things to do) or totally (at the very end).
|
// of things to do) or totally (at the very end).
|
||||||
size_t target_size;
|
size_t target_size;
|
||||||
if (partially) {
|
if (partially) {
|
||||||
@ -52,7 +52,7 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.size_
|
|||||||
} else {
|
} else {
|
||||||
target_size = 0;
|
target_size = 0;
|
||||||
}
|
}
|
||||||
@@ -4728,7 +4728,7 @@ size_t G1PrintRegionLivenessInfoClosure:
|
@@ -4707,7 +4707,7 @@
|
||||||
// The > 0 check is to deal with the prev and next live bytes which
|
// The > 0 check is to deal with the prev and next live bytes which
|
||||||
// could be 0.
|
// could be 0.
|
||||||
if (*hum_bytes > 0) {
|
if (*hum_bytes > 0) {
|
||||||
@ -61,10 +61,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.size_
|
|||||||
*hum_bytes -= bytes;
|
*hum_bytes -= bytes;
|
||||||
}
|
}
|
||||||
return bytes;
|
return bytes;
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
|
diff --git a/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp b/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
|
||||||
@@ -1726,7 +1726,7 @@ HeapWord* G1CollectedHeap::expand_and_al
|
@@ -1726,7 +1726,7 @@
|
||||||
|
|
||||||
verify_region_sets_optional();
|
verify_region_sets_optional();
|
||||||
|
|
||||||
@ -73,10 +73,22 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.size
|
|||||||
ergo_verbose1(ErgoHeapSizing,
|
ergo_verbose1(ErgoHeapSizing,
|
||||||
"attempt heap expansion",
|
"attempt heap expansion",
|
||||||
ergo_format_reason("allocation request failed")
|
ergo_format_reason("allocation request failed")
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp
|
diff --git a/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp b/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp
|
||||||
@@ -38,7 +38,7 @@ G1StringDedupQueue::G1StringDedupQueue()
|
@@ -117,7 +117,7 @@
|
||||||
|
return reserved_size() - committed_size();
|
||||||
|
}
|
||||||
|
|
||||||
|
-size_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const {
|
||||||
|
+uintptr_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const {
|
||||||
|
return (addr - _low_boundary) / _page_size;
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp b/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp
|
||||||
|
--- openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp
|
||||||
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp
|
||||||
|
@@ -38,7 +38,7 @@
|
||||||
_cancel(false),
|
_cancel(false),
|
||||||
_empty(true),
|
_empty(true),
|
||||||
_dropped(0) {
|
_dropped(0) {
|
||||||
@ -85,22 +97,22 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.s
|
|||||||
_queues = NEW_C_HEAP_ARRAY(G1StringDedupWorkerQueue, _nqueues, mtGC);
|
_queues = NEW_C_HEAP_ARRAY(G1StringDedupWorkerQueue, _nqueues, mtGC);
|
||||||
for (size_t i = 0; i < _nqueues; i++) {
|
for (size_t i = 0; i < _nqueues; i++) {
|
||||||
new (_queues + i) G1StringDedupWorkerQueue(G1StringDedupWorkerQueue::default_segment_size(), _max_cache_size, _max_size);
|
new (_queues + i) G1StringDedupWorkerQueue(G1StringDedupWorkerQueue::default_segment_size(), _max_cache_size, _max_size);
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp
|
diff --git a/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp b/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp
|
||||||
@@ -110,7 +110,7 @@ public:
|
@@ -120,7 +120,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
G1StringDedupEntryCache::G1StringDedupEntryCache() {
|
G1StringDedupEntryCache::G1StringDedupEntryCache(size_t max_size) :
|
||||||
- _nlists = MAX2(ParallelGCThreads, (size_t)1);
|
- _nlists(MAX2(ParallelGCThreads, (size_t)1)),
|
||||||
+ _nlists = MAX2(ParallelGCThreads, (uintx)1);
|
+ _nlists(MAX2(ParallelGCThreads, (uintx)1)),
|
||||||
_lists = PaddedArray<G1StringDedupEntryFreeList, mtGC>::create_unfreeable((uint)_nlists);
|
_max_list_length(0),
|
||||||
}
|
_cached(PaddedArray<G1StringDedupEntryList, mtGC>::create_unfreeable((uint)_nlists)),
|
||||||
|
_overflowed(PaddedArray<G1StringDedupEntryList, mtGC>::create_unfreeable((uint)_nlists)) {
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp
|
diff --git a/src/share/vm/gc_implementation/g1/heapRegion.cpp b/src/share/vm/gc_implementation/g1/heapRegion.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp
|
||||||
@@ -109,7 +109,7 @@ void HeapRegion::setup_heap_region_size(
|
@@ -109,7 +109,7 @@
|
||||||
if (FLAG_IS_DEFAULT(G1HeapRegionSize)) {
|
if (FLAG_IS_DEFAULT(G1HeapRegionSize)) {
|
||||||
size_t average_heap_size = (initial_heap_size + max_heap_size) / 2;
|
size_t average_heap_size = (initial_heap_size + max_heap_size) / 2;
|
||||||
region_size = MAX2(average_heap_size / HeapRegionBounds::target_number(),
|
region_size = MAX2(average_heap_size / HeapRegionBounds::target_number(),
|
||||||
@ -109,10 +121,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.size_t jd
|
|||||||
}
|
}
|
||||||
|
|
||||||
int region_size_log = log2_long((jlong) region_size);
|
int region_size_log = log2_long((jlong) region_size);
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
|
diff --git a/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp b/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
|
||||||
@@ -194,7 +194,7 @@ bool ParScanThreadState::take_from_overf
|
@@ -194,7 +194,7 @@
|
||||||
const size_t num_overflow_elems = of_stack->size();
|
const size_t num_overflow_elems = of_stack->size();
|
||||||
const size_t space_available = queue->max_elems() - queue->size();
|
const size_t space_available = queue->max_elems() - queue->size();
|
||||||
const size_t num_take_elems = MIN3(space_available / 4,
|
const size_t num_take_elems = MIN3(space_available / 4,
|
||||||
@ -121,10 +133,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
|
|||||||
num_overflow_elems);
|
num_overflow_elems);
|
||||||
// Transfer the most recent num_take_elems from the overflow
|
// Transfer the most recent num_take_elems from the overflow
|
||||||
// stack to our work queue.
|
// stack to our work queue.
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
|
diff --git a/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp b/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
|
||||||
@@ -910,8 +910,8 @@ void PSParallelCompact::initialize_space
|
@@ -910,8 +910,8 @@
|
||||||
void PSParallelCompact::initialize_dead_wood_limiter()
|
void PSParallelCompact::initialize_dead_wood_limiter()
|
||||||
{
|
{
|
||||||
const size_t max = 100;
|
const size_t max = 100;
|
||||||
@ -135,10 +147,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallel
|
|||||||
_dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev);
|
_dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev);
|
||||||
DEBUG_ONLY(_dwl_initialized = true;)
|
DEBUG_ONLY(_dwl_initialized = true;)
|
||||||
_dwl_adjustment = normal_distribution(1.0);
|
_dwl_adjustment = normal_distribution(1.0);
|
||||||
diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp
|
diff --git a/src/share/vm/memory/collectorPolicy.cpp b/src/share/vm/memory/collectorPolicy.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp
|
||||||
@@ -385,7 +385,7 @@ void TwoGenerationCollectorPolicy::initi
|
@@ -385,7 +385,7 @@
|
||||||
uintx calculated_size = NewSize + OldSize;
|
uintx calculated_size = NewSize + OldSize;
|
||||||
double shrink_factor = (double) MaxHeapSize / calculated_size;
|
double shrink_factor = (double) MaxHeapSize / calculated_size;
|
||||||
uintx smaller_new_size = align_size_down((uintx)(NewSize * shrink_factor), _gen_alignment);
|
uintx smaller_new_size = align_size_down((uintx)(NewSize * shrink_factor), _gen_alignment);
|
||||||
@ -147,7 +159,7 @@ diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t jdk8/hotspo
|
|||||||
_initial_gen0_size = NewSize;
|
_initial_gen0_size = NewSize;
|
||||||
|
|
||||||
// OldSize is already aligned because above we aligned MaxHeapSize to
|
// OldSize is already aligned because above we aligned MaxHeapSize to
|
||||||
@@ -433,7 +433,7 @@ void GenCollectorPolicy::initialize_size
|
@@ -433,7 +433,7 @@
|
||||||
// yield a size that is too small) and bound it by MaxNewSize above.
|
// yield a size that is too small) and bound it by MaxNewSize above.
|
||||||
// Ergonomics plays here by previously calculating the desired
|
// Ergonomics plays here by previously calculating the desired
|
||||||
// NewSize and MaxNewSize.
|
// NewSize and MaxNewSize.
|
||||||
@ -156,7 +168,7 @@ diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t jdk8/hotspo
|
|||||||
}
|
}
|
||||||
assert(max_new_size > 0, "All paths should set max_new_size");
|
assert(max_new_size > 0, "All paths should set max_new_size");
|
||||||
|
|
||||||
@@ -455,24 +455,23 @@ void GenCollectorPolicy::initialize_size
|
@@ -455,24 +455,23 @@
|
||||||
// lower limit.
|
// lower limit.
|
||||||
_min_gen0_size = NewSize;
|
_min_gen0_size = NewSize;
|
||||||
desired_new_size = NewSize;
|
desired_new_size = NewSize;
|
||||||
@ -186,7 +198,7 @@ diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t jdk8/hotspo
|
|||||||
|
|
||||||
assert(_min_gen0_size > 0, "Sanity check");
|
assert(_min_gen0_size > 0, "Sanity check");
|
||||||
_initial_gen0_size = desired_new_size;
|
_initial_gen0_size = desired_new_size;
|
||||||
@@ -573,7 +572,7 @@ void TwoGenerationCollectorPolicy::initi
|
@@ -573,7 +572,7 @@
|
||||||
} else {
|
} else {
|
||||||
// It's been explicitly set on the command line. Use the
|
// It's been explicitly set on the command line. Use the
|
||||||
// OldSize and then determine the consequences.
|
// OldSize and then determine the consequences.
|
||||||
@ -195,10 +207,10 @@ diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t jdk8/hotspo
|
|||||||
_initial_gen1_size = OldSize;
|
_initial_gen1_size = OldSize;
|
||||||
|
|
||||||
// If the user has explicitly set an OldSize that is inconsistent
|
// If the user has explicitly set an OldSize that is inconsistent
|
||||||
diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t jdk8/hotspot/src/share/vm/memory/metaspace.cpp
|
diff --git a/src/share/vm/memory/metaspace.cpp b/src/share/vm/memory/metaspace.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/memory/metaspace.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/memory/metaspace.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/memory/metaspace.cpp
|
||||||
@@ -1455,7 +1455,7 @@ void MetaspaceGC::initialize() {
|
@@ -1455,7 +1455,7 @@
|
||||||
|
|
||||||
void MetaspaceGC::post_initialize() {
|
void MetaspaceGC::post_initialize() {
|
||||||
// Reset the high-water mark once the VM initialization is done.
|
// Reset the high-water mark once the VM initialization is done.
|
||||||
@ -207,7 +219,7 @@ diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t jdk8/hotspot/src/
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool MetaspaceGC::can_expand(size_t word_size, bool is_class) {
|
bool MetaspaceGC::can_expand(size_t word_size, bool is_class) {
|
||||||
@@ -1515,7 +1515,7 @@ void MetaspaceGC::compute_new_size() {
|
@@ -1515,7 +1515,7 @@
|
||||||
(size_t)MIN2(min_tmp, double(max_uintx));
|
(size_t)MIN2(min_tmp, double(max_uintx));
|
||||||
// Don't shrink less than the initial generation size
|
// Don't shrink less than the initial generation size
|
||||||
minimum_desired_capacity = MAX2(minimum_desired_capacity,
|
minimum_desired_capacity = MAX2(minimum_desired_capacity,
|
||||||
@ -216,7 +228,7 @@ diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t jdk8/hotspot/src/
|
|||||||
|
|
||||||
if (PrintGCDetails && Verbose) {
|
if (PrintGCDetails && Verbose) {
|
||||||
gclog_or_tty->print_cr("\nMetaspaceGC::compute_new_size: ");
|
gclog_or_tty->print_cr("\nMetaspaceGC::compute_new_size: ");
|
||||||
@@ -1573,7 +1573,7 @@ void MetaspaceGC::compute_new_size() {
|
@@ -1573,7 +1573,7 @@
|
||||||
const double max_tmp = used_after_gc / minimum_used_percentage;
|
const double max_tmp = used_after_gc / minimum_used_percentage;
|
||||||
size_t maximum_desired_capacity = (size_t)MIN2(max_tmp, double(max_uintx));
|
size_t maximum_desired_capacity = (size_t)MIN2(max_tmp, double(max_uintx));
|
||||||
maximum_desired_capacity = MAX2(maximum_desired_capacity,
|
maximum_desired_capacity = MAX2(maximum_desired_capacity,
|
||||||
@ -225,7 +237,7 @@ diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t jdk8/hotspot/src/
|
|||||||
if (PrintGCDetails && Verbose) {
|
if (PrintGCDetails && Verbose) {
|
||||||
gclog_or_tty->print_cr(" "
|
gclog_or_tty->print_cr(" "
|
||||||
" maximum_free_percentage: %6.2f"
|
" maximum_free_percentage: %6.2f"
|
||||||
@@ -3245,7 +3245,7 @@ void Metaspace::global_initialize() {
|
@@ -3285,7 +3285,7 @@
|
||||||
// on the medium chunk list. The next chunk will be small and progress
|
// on the medium chunk list. The next chunk will be small and progress
|
||||||
// from there. This size calculated by -version.
|
// from there. This size calculated by -version.
|
||||||
_first_class_chunk_word_size = MIN2((size_t)MediumChunk*6,
|
_first_class_chunk_word_size = MIN2((size_t)MediumChunk*6,
|
||||||
@ -234,10 +246,10 @@ diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t jdk8/hotspot/src/
|
|||||||
_first_class_chunk_word_size = align_word_size_up(_first_class_chunk_word_size);
|
_first_class_chunk_word_size = align_word_size_up(_first_class_chunk_word_size);
|
||||||
// Arbitrarily set the initial virtual space to a multiple
|
// Arbitrarily set the initial virtual space to a multiple
|
||||||
// of the boot class loader size.
|
// of the boot class loader size.
|
||||||
diff -up jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.size_t jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp
|
diff --git a/src/share/vm/memory/threadLocalAllocBuffer.cpp b/src/share/vm/memory/threadLocalAllocBuffer.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp
|
||||||
@@ -238,13 +238,13 @@ size_t ThreadLocalAllocBuffer::initial_d
|
@@ -238,13 +238,13 @@
|
||||||
size_t init_sz = 0;
|
size_t init_sz = 0;
|
||||||
|
|
||||||
if (TLABSize > 0) {
|
if (TLABSize > 0) {
|
||||||
@ -254,10 +266,10 @@ diff -up jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.size_t jdk8
|
|||||||
init_sz = align_object_size(init_sz);
|
init_sz = align_object_size(init_sz);
|
||||||
}
|
}
|
||||||
init_sz = MIN2(MAX2(init_sz, min_size()), max_size());
|
init_sz = MIN2(MAX2(init_sz, min_size()), max_size());
|
||||||
diff -up jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.size_t jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp
|
diff --git a/src/share/vm/oops/objArrayKlass.inline.hpp b/src/share/vm/oops/objArrayKlass.inline.hpp
|
||||||
--- jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp
|
||||||
+++ jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp
|
||||||
@@ -48,7 +48,7 @@ void ObjArrayKlass::objarray_follow_cont
|
@@ -48,7 +48,7 @@
|
||||||
const size_t beg_index = size_t(index);
|
const size_t beg_index = size_t(index);
|
||||||
assert(beg_index < len || len == 0, "index too large");
|
assert(beg_index < len || len == 0, "index too large");
|
||||||
|
|
||||||
@ -266,7 +278,7 @@ diff -up jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.size_t jdk8/hot
|
|||||||
const size_t end_index = beg_index + stride;
|
const size_t end_index = beg_index + stride;
|
||||||
T* const base = (T*)a->base();
|
T* const base = (T*)a->base();
|
||||||
T* const beg = base + beg_index;
|
T* const beg = base + beg_index;
|
||||||
@@ -82,7 +82,7 @@ void ObjArrayKlass::objarray_follow_cont
|
@@ -82,7 +82,7 @@
|
||||||
const size_t beg_index = size_t(index);
|
const size_t beg_index = size_t(index);
|
||||||
assert(beg_index < len || len == 0, "index too large");
|
assert(beg_index < len || len == 0, "index too large");
|
||||||
|
|
||||||
@ -275,10 +287,10 @@ diff -up jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.size_t jdk8/hot
|
|||||||
const size_t end_index = beg_index + stride;
|
const size_t end_index = beg_index + stride;
|
||||||
T* const base = (T*)a->base();
|
T* const base = (T*)a->base();
|
||||||
T* const beg = base + beg_index;
|
T* const beg = base + beg_index;
|
||||||
diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.size_t jdk8/hotspot/src/share/vm/runtime/arguments.cpp
|
diff --git a/src/share/vm/runtime/arguments.cpp b/src/share/vm/runtime/arguments.cpp
|
||||||
--- jdk8/hotspot/src/share/vm/runtime/arguments.cpp.size_t 2015-05-19 12:16:26.000000000 -0400
|
--- openjdk/hotspot/src/share/vm/runtime/arguments.cpp
|
||||||
+++ jdk8/hotspot/src/share/vm/runtime/arguments.cpp 2015-06-09 10:21:39.000000000 -0400
|
+++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp
|
||||||
@@ -1277,7 +1277,7 @@ void Arguments::set_cms_and_parnew_gc_fl
|
@@ -1283,7 +1283,7 @@
|
||||||
// NewSize was set on the command line and it is larger than
|
// NewSize was set on the command line and it is larger than
|
||||||
// preferred_max_new_size.
|
// preferred_max_new_size.
|
||||||
if (!FLAG_IS_DEFAULT(NewSize)) { // NewSize explicitly set at command-line
|
if (!FLAG_IS_DEFAULT(NewSize)) { // NewSize explicitly set at command-line
|
||||||
@ -287,7 +299,7 @@ diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.size_t jdk8/hotspot/src
|
|||||||
} else {
|
} else {
|
||||||
FLAG_SET_ERGO(uintx, MaxNewSize, preferred_max_new_size);
|
FLAG_SET_ERGO(uintx, MaxNewSize, preferred_max_new_size);
|
||||||
}
|
}
|
||||||
@@ -1302,8 +1302,8 @@ void Arguments::set_cms_and_parnew_gc_fl
|
@@ -1308,8 +1308,8 @@
|
||||||
// Unless explicitly requested otherwise, make young gen
|
// Unless explicitly requested otherwise, make young gen
|
||||||
// at least min_new, and at most preferred_max_new_size.
|
// at least min_new, and at most preferred_max_new_size.
|
||||||
if (FLAG_IS_DEFAULT(NewSize)) {
|
if (FLAG_IS_DEFAULT(NewSize)) {
|
||||||
@ -298,7 +310,7 @@ diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.size_t jdk8/hotspot/src
|
|||||||
if (PrintGCDetails && Verbose) {
|
if (PrintGCDetails && Verbose) {
|
||||||
// Too early to use gclog_or_tty
|
// Too early to use gclog_or_tty
|
||||||
tty->print_cr("CMS ergo set NewSize: " SIZE_FORMAT, NewSize);
|
tty->print_cr("CMS ergo set NewSize: " SIZE_FORMAT, NewSize);
|
||||||
@@ -1313,7 +1313,7 @@ void Arguments::set_cms_and_parnew_gc_fl
|
@@ -1319,7 +1319,7 @@
|
||||||
// so it's NewRatio x of NewSize.
|
// so it's NewRatio x of NewSize.
|
||||||
if (FLAG_IS_DEFAULT(OldSize)) {
|
if (FLAG_IS_DEFAULT(OldSize)) {
|
||||||
if (max_heap > NewSize) {
|
if (max_heap > NewSize) {
|
||||||
@ -307,15 +319,3 @@ diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.size_t jdk8/hotspot/src
|
|||||||
if (PrintGCDetails && Verbose) {
|
if (PrintGCDetails && Verbose) {
|
||||||
// Too early to use gclog_or_tty
|
// Too early to use gclog_or_tty
|
||||||
tty->print_cr("CMS ergo set OldSize: " SIZE_FORMAT, OldSize);
|
tty->print_cr("CMS ergo set OldSize: " SIZE_FORMAT, OldSize);
|
||||||
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp
|
|
||||||
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp.size_t 2015-06-09 10:35:04.000000000 -0400
|
|
||||||
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp 2015-06-09 10:33:21.000000000 -0400
|
|
||||||
@@ -117,7 +117,7 @@ size_t G1PageBasedVirtualSpace::uncommit
|
|
||||||
return reserved_size() - committed_size();
|
|
||||||
}
|
|
||||||
|
|
||||||
-size_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const {
|
|
||||||
+uintptr_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const {
|
|
||||||
return (addr - _low_boundary) / _page_size;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@
|
|||||||
%ifarch %{jit_arches}
|
%ifarch %{jit_arches}
|
||||||
%global bootstrap_build 1
|
%global bootstrap_build 1
|
||||||
%else
|
%else
|
||||||
%global bootstrap_build 0
|
%global bootstrap_build 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{bootstrap_build}
|
%if %{bootstrap_build}
|
||||||
@ -168,9 +168,9 @@
|
|||||||
# Standard JPackage naming and versioning defines.
|
# Standard JPackage naming and versioning defines.
|
||||||
%global origin openjdk
|
%global origin openjdk
|
||||||
# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there.
|
# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there.
|
||||||
%global project aarch64-port
|
%global project openjdk8-forests
|
||||||
%global repo jdk8u
|
%global repo latest-aarch64
|
||||||
%global revision aarch64-jdk8u111-b16
|
%global revision aarch64-jdk8u121-b14
|
||||||
# eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%)
|
# eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%)
|
||||||
%global whole_update %(VERSION=%{revision}; echo ${VERSION%%-*})
|
%global whole_update %(VERSION=%{revision}; echo ${VERSION%%-*})
|
||||||
# eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60
|
# eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60
|
||||||
@ -257,7 +257,10 @@ if [ "$1" -gt 1 ]; then
|
|||||||
"${sum}" = '5ea976e209d0d0b5b6ab148416123e02' -o \\
|
"${sum}" = '5ea976e209d0d0b5b6ab148416123e02' -o \\
|
||||||
"${sum}" = '059d61cfbb47e337b011ecda9350db9b' -o \\
|
"${sum}" = '059d61cfbb47e337b011ecda9350db9b' -o \\
|
||||||
"${sum}" = '59dafb237e5def3ccf8a3ad589fb2777' -o \\
|
"${sum}" = '59dafb237e5def3ccf8a3ad589fb2777' -o \\
|
||||||
"${sum}" = '5ab4c77cf14fbd7f7ee6f51a7a73d88c' ]; then
|
"${sum}" = '84d16306cd4c2ae76ba81a3775e92cee' -o \\
|
||||||
|
"${sum}" = '5ab4c77cf14fbd7f7ee6f51a7a73d88c' -o \\
|
||||||
|
"${sum}" = 'b727442b4ac0e3b8a26ec9741ad463e5' -o \\
|
||||||
|
"${sum}" = 'a59c6d96aeae1303fb8ba85e97588e9d' ]; then
|
||||||
if [ -f "${javasecurity}.rpmnew" ]; then
|
if [ -f "${javasecurity}.rpmnew" ]; then
|
||||||
mv -f "${javasecurity}.rpmnew" "${javasecurity}"
|
mv -f "${javasecurity}.rpmnew" "${javasecurity}"
|
||||||
fi
|
fi
|
||||||
@ -797,7 +800,7 @@ Obsoletes: java-1.7.0-openjdk-accessibility%1
|
|||||||
|
|
||||||
Name: java-%{javaver}-%{origin}
|
Name: java-%{javaver}-%{origin}
|
||||||
Version: %{javaver}.%{updatever}
|
Version: %{javaver}.%{updatever}
|
||||||
Release: 5.%{buildver}%{?dist}
|
Release: 1.%{buildver}%{?dist}
|
||||||
# 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
|
||||||
@ -853,7 +856,7 @@ Source20: repackReproduciblePolycies.sh
|
|||||||
Source100: config.guess
|
Source100: config.guess
|
||||||
Source101: config.sub
|
Source101: config.sub
|
||||||
# shenandoah hotpost
|
# shenandoah hotpost
|
||||||
Source999: aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u111-b16.tar.xz
|
Source999: openjdk8-forests-latest-shenandoah-aarch64-shenandoah-jdk8u121-b14.tar.xz
|
||||||
|
|
||||||
# RPM/distribution specific patches
|
# RPM/distribution specific patches
|
||||||
|
|
||||||
@ -925,20 +928,6 @@ Patch526: 6260348-pr3066.patch
|
|||||||
# S8162384, PR3122, RH1358661: Performance regression: bimorphic inlining may be bypassed by type speculation
|
# S8162384, PR3122, RH1358661: Performance regression: bimorphic inlining may be bypassed by type speculation
|
||||||
Patch532: 8162384-pr3122-rh1358661.patch
|
Patch532: 8162384-pr3122-rh1358661.patch
|
||||||
|
|
||||||
# Patches upstream and appearing in 8u111
|
|
||||||
# S8159244, PR3074: Partially initialized string object created by C2's string concat optimization may escape
|
|
||||||
Patch527: 8159244-pr3074.patch
|
|
||||||
|
|
||||||
# Patches upstream and appearing in 8u112
|
|
||||||
# S8044762, PR2960: com/sun/jdi/OptionTest.java test time out
|
|
||||||
Patch521: 8044762-pr2960.patch
|
|
||||||
# S8049226, PR2960: com/sun/jdi/OptionTest.java test times out again
|
|
||||||
Patch522: 8049226-pr2960.patch
|
|
||||||
# 8154210: Zero: Better byte behaviour
|
|
||||||
Patch606: 8154210.patch
|
|
||||||
# S8158260, PR2991, RH1341258: JVM on PPC64 LE crashes due to an illegal instruction in JITed code
|
|
||||||
Patch524: 8158260-pr2991-rh1341258.patch
|
|
||||||
|
|
||||||
# Patches ineligible for 8u
|
# Patches ineligible for 8u
|
||||||
# 8043805: Allow using a system-installed libjpeg
|
# 8043805: Allow using a system-installed libjpeg
|
||||||
Patch201: system-libjpeg.patch
|
Patch201: system-libjpeg.patch
|
||||||
@ -1260,10 +1249,8 @@ sh %{SOURCE12}
|
|||||||
%patch103
|
%patch103
|
||||||
|
|
||||||
# ppc64le fixes
|
# ppc64le fixes
|
||||||
%patch524
|
|
||||||
|
|
||||||
# Zero fixes.
|
# Zero fixes.
|
||||||
%patch606
|
|
||||||
|
|
||||||
%patch603
|
%patch603
|
||||||
%patch601
|
%patch601
|
||||||
@ -1284,12 +1271,9 @@ sh %{SOURCE12}
|
|||||||
%patch517
|
%patch517
|
||||||
%patch518
|
%patch518
|
||||||
%patch400
|
%patch400
|
||||||
%patch521
|
|
||||||
%patch522
|
|
||||||
%patch523
|
%patch523
|
||||||
%patch525
|
%patch525
|
||||||
%patch526
|
%patch526
|
||||||
%patch527
|
|
||||||
%patch528
|
%patch528
|
||||||
%patch532
|
%patch532
|
||||||
%patch533
|
%patch533
|
||||||
@ -1936,6 +1920,21 @@ require "copy_jdk_configs.lua"
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jan 24 2017 jvanek <jvanek@redhat.com> - 1:1.8.0.121-1.b14
|
||||||
|
- updated to aarch64-jdk8u121-b14 (from openjdk8-forests/latest-aarch64)
|
||||||
|
- updated to aarch64-shenandoah-jdk8u121-b14 (from openjdk8-forests/latest-shenandoah) of hotspot
|
||||||
|
- used openjdk8-forests-latest-aarch64-aarch64-jdk8u121-b14.tar.xz as new sources
|
||||||
|
- used openjdk8-forests-latest-shenandoah-aarch64-shenandoah-jdk8u121-b14.tar.xz as new sources for hotspot
|
||||||
|
- deleted: 8044762-pr2960.patch 8049226-pr2960.patch 8154210.patch 8158260-pr2991-rh1341258.patch 8159244-pr3074.patch
|
||||||
|
- adapted java-1.8.0-openjdk-size_t.patch pr1834-rh1022017.patch rh1163501.patch
|
||||||
|
- updated from internal (rhel) repo OPENJDK_URL_DEFAULT=ssh://t...redhat.com//...ty/
|
||||||
|
- with custom PR2126=/.../pr2126.patch (removed newly added brainpool curves)
|
||||||
|
- withspecial values of PROJECT_NAME="openjdk8-forests", REPO_NAME="latest-aarch64"
|
||||||
|
- with correct tag VERSION="aarch64-jdk8u121-b14"
|
||||||
|
- and for shenandoah hotspot used custom repo REPO_NAME=latest-shenandoah
|
||||||
|
- with correct tag VERSION="aarch64-shenandoah-jdk8u121-b14"
|
||||||
|
- complete changes to generate_source_tarball.sh update_package.sh NOT commited (willbe regenerated from official repos soon)
|
||||||
|
|
||||||
* Mon Jan 09 2017 jvanek <jvanek@redhat.com - 1:1.8.0.111-5.b16
|
* Mon Jan 09 2017 jvanek <jvanek@redhat.com - 1:1.8.0.111-5.b16
|
||||||
- Added arched dependencies to headless/main package
|
- Added arched dependencies to headless/main package
|
||||||
|
|
||||||
|
@ -1,44 +1,28 @@
|
|||||||
diff -r a5c3d9643077 src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java
|
diff --git a/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java b/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java
|
||||||
--- openjdk/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java Tue Feb 10 16:24:28 2015 +0000
|
--- openjdk/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java
|
||||||
+++ openjdk/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java Thu May 14 04:01:02 2015 +0100
|
+++ openjdk/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java
|
||||||
@@ -37,25 +37,11 @@
|
@@ -160,20 +160,10 @@
|
||||||
// the extension value to send in the ClientHello message
|
}
|
||||||
static final SupportedEllipticCurvesExtension DEFAULT;
|
}
|
||||||
|
} else { // default curves
|
||||||
- private static final boolean fips;
|
- int[] ids;
|
||||||
-
|
- if (requireFips) {
|
||||||
static {
|
- ids = new int[] {
|
||||||
- int[] ids;
|
- // only NIST curves in FIPS mode
|
||||||
- fips = SunJSSE.isFIPS();
|
- 23, 24, 25, 9, 10, 11, 12, 13, 14,
|
||||||
- if (fips == false) {
|
- };
|
||||||
- ids = new int[] {
|
- } else {
|
||||||
- // NIST curves first
|
- ids = new int[] {
|
||||||
- // prefer NIST P-256, rest in order of increasing key length
|
- // NIST curves first
|
||||||
- 23, 1, 3, 19, 21, 6, 7, 9, 10, 24, 11, 12, 25, 13, 14,
|
- 23, 24, 25, 9, 10, 11, 12, 13, 14,
|
||||||
- // non-NIST curves
|
- // non-NIST curves
|
||||||
- 15, 16, 17, 2, 18, 4, 5, 20, 8, 22,
|
- 22,
|
||||||
- };
|
- };
|
||||||
- } else {
|
- }
|
||||||
- ids = new int[] {
|
+ int[] ids = new int[] {
|
||||||
- // same as above, but allow only NIST curves in FIPS mode
|
+ // NSS currently only supports these three NIST curves
|
||||||
- 23, 1, 3, 19, 21, 6, 7, 9, 10, 24, 11, 12, 25, 13, 14,
|
+ 23, 24, 25
|
||||||
- };
|
+ };
|
||||||
- }
|
|
||||||
+ int[] ids = new int[] {
|
|
||||||
+ // NSS currently only supports these three NIST curves
|
|
||||||
+ 23, 24, 25
|
|
||||||
+ };
|
|
||||||
DEFAULT = new SupportedEllipticCurvesExtension(ids);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -150,10 +136,6 @@
|
|
||||||
if ((index <= 0) || (index >= NAMED_CURVE_OID_TABLE.length)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
- if (fips == false) {
|
|
||||||
- // in non-FIPS mode, we support all valid indices
|
|
||||||
- return true;
|
|
||||||
- }
|
|
||||||
return DEFAULT.contains(index);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
idList = new ArrayList<>(ids.length);
|
||||||
|
for (int curveId : ids) {
|
||||||
|
113
rh1163501.patch
113
rh1163501.patch
@ -1,65 +1,54 @@
|
|||||||
--- jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java Tue Mar 17 00:09:12 2015 +0300
|
diff --git a/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java b/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java
|
||||||
+++ jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java Wed Apr 08 14:25:54 2015 +0100
|
--- openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java
|
||||||
@@ -1,5 +1,6 @@
|
+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java
|
||||||
|
@@ -1,5 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||||
+ * Copyright (c) 2014 Red Hat Inc.
|
+ * Copyright (c) 2014 Red Hat Inc.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -80,10 +81,10 @@
|
@@ -74,10 +75,10 @@
|
||||||
* @param random the source of randomness
|
|
||||||
*/
|
|
||||||
public void initialize(int keysize, SecureRandom random) {
|
|
||||||
- if ((keysize < 512) || (keysize > 2048) || (keysize % 64 != 0)) {
|
|
||||||
+ if ((keysize < 512) || (keysize > 4096) || (keysize % 64 != 0)) {
|
|
||||||
throw new InvalidParameterException("Keysize must be multiple "
|
|
||||||
+ "of 64, and can only range "
|
|
||||||
- + "from 512 to 2048 "
|
|
||||||
+ + "from 512 to 4096 "
|
|
||||||
+ "(inclusive)");
|
|
||||||
}
|
|
||||||
this.pSize = keysize;
|
|
||||||
@@ -115,11 +116,11 @@
|
|
||||||
|
|
||||||
params = (DHParameterSpec)algParams;
|
|
||||||
pSize = params.getP().bitLength();
|
|
||||||
- if ((pSize < 512) || (pSize > 2048) ||
|
|
||||||
+ if ((pSize < 512) || (pSize > 4096) ||
|
|
||||||
(pSize % 64 != 0)) {
|
|
||||||
throw new InvalidAlgorithmParameterException
|
|
||||||
("Prime size must be multiple of 64, and can only range "
|
|
||||||
- + "from 512 to 2048 (inclusive)");
|
|
||||||
+ + "from 512 to 4096 (inclusive)");
|
|
||||||
}
|
|
||||||
|
|
||||||
// exponent size is optional, could be 0
|
|
||||||
--- jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java Tue Mar 17 00:09:12 2015 +0300
|
|
||||||
+++ jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java Wed Apr 08 14:25:54 2015 +0100
|
|
||||||
@@ -1,5 +1,6 @@
|
|
||||||
/*
|
|
||||||
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
+ * Copyright (c) 2014 Red Hat Inc.
|
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
||||||
*
|
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
|
||||||
@@ -60,11 +61,11 @@
|
|
||||||
|
|
||||||
private static void checkKeySize(int keysize)
|
private static void checkKeySize(int keysize)
|
||||||
throws InvalidAlgorithmParameterException {
|
throws InvalidParameterException {
|
||||||
- if ((keysize != 2048) &&
|
|
||||||
+ if ((keysize != 2048) && (keysize != 4096) &&
|
- if ((keysize < 512) || (keysize > 2048) || ((keysize & 0x3F) != 0)) {
|
||||||
((keysize < 512) || (keysize > 1024) || (keysize % 64 != 0))) {
|
+ if ((keysize < 512) || (keysize > 4096) || ((keysize & 0x3F) != 0)) {
|
||||||
throw new InvalidAlgorithmParameterException(
|
throw new InvalidParameterException(
|
||||||
"Keysize must be multiple of 64 ranging from "
|
"DH key size must be multiple of 64, and can only range " +
|
||||||
- + "512 to 1024 (inclusive), or 2048");
|
- "from 512 to 2048 (inclusive). " +
|
||||||
+ + "512 to 1024 (inclusive), or 2048, or 4096");
|
+ "from 512 to 4096 (inclusive). " +
|
||||||
|
"The specific key size " + keysize + " is not supported");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
diff --git a/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java b/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java
|
||||||
|
--- openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java
|
||||||
|
+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java
|
||||||
|
@@ -1,5 +1,6 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
+ * Copyright (c) 2014 Red Hat Inc.
|
||||||
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
*
|
||||||
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
@@ -60,11 +61,11 @@
|
||||||
|
|
||||||
--- jdk8/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java Tue Mar 17 00:09:12 2015 +0300
|
private static void checkKeySize(int keysize)
|
||||||
+++ jdk8/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java Wed Apr 08 14:25:54 2015 +0100
|
throws InvalidParameterException {
|
||||||
@@ -278,11 +278,11 @@
|
- if ((keysize != 2048) &&
|
||||||
|
+ if ((keysize != 2048) && (keysize != 4096) &&
|
||||||
|
((keysize < 512) || (keysize > 1024) || (keysize % 64 != 0))) {
|
||||||
|
throw new InvalidParameterException(
|
||||||
|
"DH key size must be multiple of 64 and range " +
|
||||||
|
- "from 512 to 1024 (inclusive), or 2048. " +
|
||||||
|
+ "from 512 to 1024 (inclusive), or 2048, or 4096. " +
|
||||||
|
"The specific key size " + keysize + " is not supported");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
diff --git a/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java b/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java
|
||||||
|
--- openjdk/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java
|
||||||
|
+++ openjdk/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java
|
||||||
|
@@ -285,11 +285,11 @@
|
||||||
// this restriction is in the spec for DSA
|
// this restriction is in the spec for DSA
|
||||||
// since we currently use DSA parameters for DH as well,
|
// since we currently use DSA parameters for DH as well,
|
||||||
// it also applies to DH if no parameters are specified
|
// it also applies to DH if no parameters are specified
|
||||||
@ -68,21 +57,22 @@
|
|||||||
((keySize > 1024) || ((keySize & 0x3f) != 0))) {
|
((keySize > 1024) || ((keySize & 0x3f) != 0))) {
|
||||||
throw new InvalidAlgorithmParameterException(algorithm +
|
throw new InvalidAlgorithmParameterException(algorithm +
|
||||||
" key must be multiples of 64 if less than 1024 bits" +
|
" key must be multiples of 64 if less than 1024 bits" +
|
||||||
- ", or 2048 bits");
|
- ", or 2048 bits. " +
|
||||||
+ ", or 2048 bits, or 4096 bits");
|
+ ", or 2048 bits, or 4096 bits. " +
|
||||||
|
"The specific key size " +
|
||||||
|
keySize + " is not supported");
|
||||||
}
|
}
|
||||||
}
|
diff --git a/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java b/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java
|
||||||
}
|
--- openjdk/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java
|
||||||
--- jdk8/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java Tue Mar 17 00:09:12 2015 +0300
|
+++ openjdk/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java
|
||||||
+++ jdk8/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java Wed Apr 08 14:25:54 2015 +0100
|
@@ -1,5 +1,6 @@
|
||||||
@@ -1,5 +1,6 @@
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
+ * Copyright (c) 2014 Red Hat Inc.
|
+ * Copyright (c) 2014 Red Hat Inc.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -58,7 +59,7 @@
|
@@ -58,7 +59,7 @@
|
||||||
*/
|
*/
|
||||||
private enum Sizes {
|
private enum Sizes {
|
||||||
two56(256), three84(384), five12(512), seven68(768), ten24(1024),
|
two56(256), three84(384), five12(512), seven68(768), ten24(1024),
|
||||||
@ -91,7 +81,7 @@
|
|||||||
|
|
||||||
private final int intSize;
|
private final int intSize;
|
||||||
private final BigInteger bigIntValue;
|
private final BigInteger bigIntValue;
|
||||||
@@ -130,6 +131,19 @@
|
@@ -130,6 +131,19 @@
|
||||||
kp = kpg.generateKeyPair();
|
kp = kpg.generateKeyPair();
|
||||||
checkKeyPair(kp, Sizes.twenty48, Sizes.five12);
|
checkKeyPair(kp, Sizes.twenty48, Sizes.five12);
|
||||||
|
|
||||||
@ -111,4 +101,3 @@
|
|||||||
System.out.println("OK");
|
System.out.println("OK");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
6
sources
6
sources
@ -1,3 +1,3 @@
|
|||||||
822e321b710defc8f9c8ec97a6f34b55 systemtap-tapset-3.1.0.tar.xz
|
SHA512 (systemtap-tapset-3.1.0.tar.xz) = e3558dc9d56dff5125a869807135e84ca73a2640d8d8fff2f45dc0dd7d153b81b48c08480e09a75667eba62362f74091465fac622aa0d9b104bfb18b4eba80e1
|
||||||
f33dff82e5c0d33d81d8100576b612eb aarch64-port-jdk8u-aarch64-jdk8u111-b16.tar.xz
|
SHA512 (openjdk8-forests-latest-aarch64-aarch64-jdk8u121-b14.tar.xz) = 8a5418c0560736d3450bbb4f3a0b19d028713f39634630d4e3689c664f25e2dbe9473c3657d5e02c5c614a37dce3cfb9db93a449f5f7f0294dec748514b67dc8
|
||||||
dcb3a75964f52a50bb32b2179132724f aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u111-b16.tar.xz
|
SHA512 (openjdk8-forests-latest-shenandoah-aarch64-shenandoah-jdk8u121-b14.tar.xz) = 1b7e9a598fb43c96599393fbe712056e8031ddd985d9abe5e4ffdaa309a9b43659da29f9d9294cd0dab8cbb1d19fc8149c49fee6e81fced120c18d59f015ce81
|
||||||
|
@ -24,7 +24,7 @@ if [ "x$REPO_NAME" = "x" ] ; then
|
|||||||
REPO_NAME="jdk8u"
|
REPO_NAME="jdk8u"
|
||||||
fi
|
fi
|
||||||
if [ "x$VERSION" = "x" ] ; then
|
if [ "x$VERSION" = "x" ] ; then
|
||||||
VERSION="aarch64-jdk8u111-b16"
|
VERSION="aarch64-jdk8u121-b14"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "x$COMPRESSION" = "x" ] ; then
|
if [ "x$COMPRESSION" = "x" ] ; then
|
||||||
@ -102,7 +102,7 @@ if [ "x$VERSION" = "xtip" ] ; then
|
|||||||
VERSION="tip"
|
VERSION="tip"
|
||||||
else
|
else
|
||||||
#hardcoding version for anything else except tip
|
#hardcoding version for anything else except tip
|
||||||
VERSION="aarch64-shenandoah-jdk8u111-b16"
|
VERSION="aarch64-shenandoah-jdk8u121-b14"
|
||||||
fi
|
fi
|
||||||
MAIN_REPO_NAME=$REPO_NAME
|
MAIN_REPO_NAME=$REPO_NAME
|
||||||
REPO_NAME=jdk8u-shenandoah
|
REPO_NAME=jdk8u-shenandoah
|
||||||
|
Loading…
Reference in New Issue
Block a user