Updated to u181-b15; moved to single repo tarball.
This commit is contained in:
parent
ca2a20d6f9
commit
017a1252e2
1
.gitignore
vendored
1
.gitignore
vendored
@ -120,3 +120,4 @@
|
||||
/aarch64-port-jdk8u-aarch64-jdk8u181-b13.tar.xz
|
||||
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b13.tar.xz
|
||||
/systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz
|
||||
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b15.tar.xz
|
||||
|
@ -1,123 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User mdoerr
|
||||
# Date 1473159687 -7200
|
||||
# Tue Sep 06 13:01:27 2016 +0200
|
||||
# Node ID 7f6e1069a5719c8908b53774d3560ce851c7cd70
|
||||
# Parent b8fc1e640c4c7f38ca94131279cb67c4d3de6961
|
||||
8165489, PR3589: Missing G1 barrier in Unsafe_GetObjectVolatile
|
||||
Summary: Add missing barrier, sharing code with Unsafe_GetObject.
|
||||
Reviewed-by: kbarrett, mgerdin, pliden, tschatzl
|
||||
|
||||
diff --git openjdk.orig/hotspot/src/share/vm/prims/unsafe.cpp openjdk/hotspot/src/share/vm/prims/unsafe.cpp
|
||||
--- openjdk.orig/hotspot/src/share/vm/prims/unsafe.cpp
|
||||
+++ openjdk/hotspot/src/share/vm/prims/unsafe.cpp
|
||||
@@ -199,37 +199,40 @@
|
||||
|
||||
// Get/SetObject must be special-cased, since it works with handles.
|
||||
|
||||
+// We could be accessing the referent field in a reference
|
||||
+// object. If G1 is enabled then we need to register non-null
|
||||
+// referent with the SATB barrier.
|
||||
+
|
||||
+#if INCLUDE_ALL_GCS
|
||||
+static bool is_java_lang_ref_Reference_access(oop o, jlong offset) {
|
||||
+ if (offset == java_lang_ref_Reference::referent_offset && o != NULL) {
|
||||
+ Klass* k = o->klass();
|
||||
+ if (InstanceKlass::cast(k)->reference_type() != REF_NONE) {
|
||||
+ assert(InstanceKlass::cast(k)->is_subclass_of(SystemDictionary::Reference_klass()), "sanity");
|
||||
+ return true;
|
||||
+ }
|
||||
+ }
|
||||
+ return false;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+static void ensure_satb_referent_alive(oop o, jlong offset, oop v) {
|
||||
+#if INCLUDE_ALL_GCS
|
||||
+ if (UseG1GC && v != NULL && is_java_lang_ref_Reference_access(o, offset)) {
|
||||
+ G1SATBCardTableModRefBS::enqueue(v);
|
||||
+ }
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
// The xxx140 variants for backward compatibility do not allow a full-width offset.
|
||||
UNSAFE_ENTRY(jobject, Unsafe_GetObject140(JNIEnv *env, jobject unsafe, jobject obj, jint offset))
|
||||
UnsafeWrapper("Unsafe_GetObject");
|
||||
if (obj == NULL) THROW_0(vmSymbols::java_lang_NullPointerException());
|
||||
GET_OOP_FIELD(obj, offset, v)
|
||||
- jobject ret = JNIHandles::make_local(env, v);
|
||||
-#if INCLUDE_ALL_GCS
|
||||
- // We could be accessing the referent field in a reference
|
||||
- // object. If G1 is enabled then we need to register a non-null
|
||||
- // referent with the SATB barrier.
|
||||
- if (UseG1GC) {
|
||||
- bool needs_barrier = false;
|
||||
|
||||
- if (ret != NULL) {
|
||||
- if (offset == java_lang_ref_Reference::referent_offset) {
|
||||
- oop o = JNIHandles::resolve_non_null(obj);
|
||||
- Klass* k = o->klass();
|
||||
- if (InstanceKlass::cast(k)->reference_type() != REF_NONE) {
|
||||
- assert(InstanceKlass::cast(k)->is_subclass_of(SystemDictionary::Reference_klass()), "sanity");
|
||||
- needs_barrier = true;
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
+ ensure_satb_referent_alive(p, offset, v);
|
||||
|
||||
- if (needs_barrier) {
|
||||
- oop referent = JNIHandles::resolve(ret);
|
||||
- G1SATBCardTableModRefBS::enqueue(referent);
|
||||
- }
|
||||
- }
|
||||
-#endif // INCLUDE_ALL_GCS
|
||||
- return ret;
|
||||
+ return JNIHandles::make_local(env, v);
|
||||
UNSAFE_END
|
||||
|
||||
UNSAFE_ENTRY(void, Unsafe_SetObject140(JNIEnv *env, jobject unsafe, jobject obj, jint offset, jobject x_h))
|
||||
@@ -262,32 +265,10 @@
|
||||
UNSAFE_ENTRY(jobject, Unsafe_GetObject(JNIEnv *env, jobject unsafe, jobject obj, jlong offset))
|
||||
UnsafeWrapper("Unsafe_GetObject");
|
||||
GET_OOP_FIELD(obj, offset, v)
|
||||
- jobject ret = JNIHandles::make_local(env, v);
|
||||
-#if INCLUDE_ALL_GCS
|
||||
- // We could be accessing the referent field in a reference
|
||||
- // object. If G1 is enabled then we need to register non-null
|
||||
- // referent with the SATB barrier.
|
||||
- if (UseG1GC) {
|
||||
- bool needs_barrier = false;
|
||||
|
||||
- if (ret != NULL) {
|
||||
- if (offset == java_lang_ref_Reference::referent_offset && obj != NULL) {
|
||||
- oop o = JNIHandles::resolve(obj);
|
||||
- Klass* k = o->klass();
|
||||
- if (InstanceKlass::cast(k)->reference_type() != REF_NONE) {
|
||||
- assert(InstanceKlass::cast(k)->is_subclass_of(SystemDictionary::Reference_klass()), "sanity");
|
||||
- needs_barrier = true;
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
+ ensure_satb_referent_alive(p, offset, v);
|
||||
|
||||
- if (needs_barrier) {
|
||||
- oop referent = JNIHandles::resolve(ret);
|
||||
- G1SATBCardTableModRefBS::enqueue(referent);
|
||||
- }
|
||||
- }
|
||||
-#endif // INCLUDE_ALL_GCS
|
||||
- return ret;
|
||||
+ return JNIHandles::make_local(env, v);
|
||||
UNSAFE_END
|
||||
|
||||
UNSAFE_ENTRY(void, Unsafe_SetObject(JNIEnv *env, jobject unsafe, jobject obj, jlong offset, jobject x_h))
|
||||
@@ -312,6 +293,9 @@
|
||||
} else {
|
||||
(void)const_cast<oop&>(v = *(volatile oop*) addr);
|
||||
}
|
||||
+
|
||||
+ ensure_satb_referent_alive(p, offset, v);
|
||||
+
|
||||
OrderAccess::acquire();
|
||||
return JNIHandles::make_local(env, v);
|
||||
UNSAFE_END
|
@ -1,21 +0,0 @@
|
||||
--- openjdk/jdk/src/solaris/classes/sun/nio/fs/LinuxFileStore.java 2017-08-23 11:40:26.690809603 +0200
|
||||
+++ openjdk/jdk/src/solaris/classes/sun/nio/fs/LinuxFileStore.java 2017-08-23 11:44:28.314815334 +0200
|
||||
@@ -74,8 +74,16 @@
|
||||
} catch (UnixException x) {
|
||||
x.rethrowAsIOException(parent);
|
||||
}
|
||||
- if (attrs.dev() != dev())
|
||||
- break;
|
||||
+ if (attrs.dev() != dev()) {
|
||||
+
|
||||
+ // step 3: lookup mounted file systems (use /proc/mounts to ensure we
|
||||
+ // find the file system even when not in /etc/mtab)
|
||||
+ byte[] dir = path.asByteArray();
|
||||
+ for (UnixMountEntry entry: fs.getMountEntries("/proc/mounts")) {
|
||||
+ if (Arrays.equals(dir, entry.dir()))
|
||||
+ return entry;
|
||||
+ }
|
||||
+ }
|
||||
path = parent;
|
||||
parent = parent.getParent();
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User sgehwolf
|
||||
# Date 1523360781 -7200
|
||||
# Tue Apr 10 13:46:21 2018 +0200
|
||||
# Node ID 5f2401aef9acb6998f06cb82fdd8a84eda3e63ad
|
||||
# Parent 656ab3b39178c1e4de644d490613bfd8212ae924
|
||||
8196516: libfontmanager must be built with LDFLAGS allowing unresolved symbols
|
||||
Summary: Fixes build failures on some sustems with custom LDFLAGS settings.
|
||||
|
||||
diff --git a/make/lib/Awt2dLibraries.gmk b/make/lib/Awt2dLibraries.gmk
|
||||
--- a/make/lib/Awt2dLibraries.gmk
|
||||
+++ b/make/lib/Awt2dLibraries.gmk
|
||||
@@ -927,6 +927,10 @@ ifeq ($(OPENJDK_TARGET_OS), linux)
|
||||
BUILD_LIBFONTMANAGER_IndicRearrangementProcessor2.cpp_CXXFLAGS := -fno-strict-overflow
|
||||
endif
|
||||
|
||||
+# LDFLAGS clarification:
|
||||
+# Filter relevant linker flags disallowing unresolved symbols as we cannot
|
||||
+# build-time decide to which library to link against (libawt_headless or
|
||||
+# libawt_xawt). See JDK-8196516 for details.
|
||||
$(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER, \
|
||||
LIBRARY := fontmanager, \
|
||||
OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
|
||||
@@ -941,7 +945,8 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER, \
|
||||
CFLAGS_windows = -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \
|
||||
-DCC_NOEX, \
|
||||
MAPFILE := $(BUILD_LIBFONTMANAGER_MAPFILE), \
|
||||
- LDFLAGS := $(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \
|
||||
+ LDFLAGS := $(subst -Xlinker -z -Xlinker defs,, \
|
||||
+ $(subst -Wl$(COMMA)-z$(COMMA)defs,,$(LDFLAGS_JDKLIB))) $(LDFLAGS_CXX_JDK) \
|
||||
$(call SET_SHARED_LIBRARY_ORIGIN), \
|
||||
LDFLAGS_SUFFIX := $(BUILD_LIBFONTMANAGER_FONTLIB), \
|
||||
LDFLAGS_SUFFIX_linux := -lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc, \
|
@ -219,12 +219,13 @@
|
||||
%global origin_nice OpenJDK
|
||||
%global top_level_dir_name %{origin}
|
||||
# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there.
|
||||
%global project aarch64-port
|
||||
%global repo jdk8u
|
||||
%global revision aarch64-jdk8u181-b13
|
||||
%global shenandoah_project aarch64-port
|
||||
%global shenandoah_repo jdk8u-shenandoah
|
||||
%global shenandoah_revision aarch64-shenandoah-jdk8u181-b13
|
||||
%global shenandoah_revision aarch64-shenandoah-jdk8u181-b15
|
||||
# Define old aarch64/jdk8u tree variables for compatibility
|
||||
%global project %{shenandoah_project}
|
||||
%global repo %{shenandoah_repo}
|
||||
%global revision %{shenandoah_revision}
|
||||
|
||||
# eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%)
|
||||
%global whole_update %(VERSION=%{revision}; echo ${VERSION%%-*})
|
||||
@ -960,7 +961,7 @@ Provides: java-%{javaver}-%{origin}-accessibility = %{epoch}:%{version}-%{releas
|
||||
|
||||
Name: java-%{javaver}-%{origin}
|
||||
Version: %{javaver}.%{updatever}.%{buildver}
|
||||
Release: 7%{?dist}
|
||||
Release: 0%{?dist}
|
||||
# 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
|
||||
# also included the epoch in their virtual provides. This created a
|
||||
@ -988,22 +989,15 @@ Group: Development/Languages
|
||||
License: ASL 1.1 and ASL 2.0 and BSD and BSD with advertising and GPL+ and GPLv2 and GPLv2 with exceptions and IJG and LGPLv2+ and MIT and MPLv2.0 and Public Domain and W3C and zlib
|
||||
URL: http://openjdk.java.net/
|
||||
|
||||
# aarch64-port now contains integration forest of both aarch64 and normal jdk
|
||||
# Source from upstream OpenJDK8 project. To regenerate, use
|
||||
# VERSION=%%{revision} FILE_NAME_ROOT=%%{project}-%%{repo}-${VERSION}
|
||||
# REPO_ROOT=<path to checked-out repository> generate_source_tarball.sh
|
||||
# where the source is obtained from http://hg.openjdk.java.net/%%{project}/%%{repo}
|
||||
Source0: %{project}-%{repo}-%{revision}.tar.xz
|
||||
|
||||
# Shenandoah HotSpot
|
||||
# aarch64-port/jdk8u-shenandoah contains an integration forest of
|
||||
# OpenJDK 8u, the aarch64 port and Shenandoah
|
||||
# To regenerate, use:
|
||||
# VERSION=%%{shenandoah_revision}
|
||||
# FILE_NAME_ROOT=%%{shenandoah_project}-%%{shenandoah_repo}-${VERSION}
|
||||
# REPO_ROOT=<path to checked-out repository> REPOS=hotspot generate_source_tarball.sh
|
||||
# REPO_ROOT=<path to checked-out repository> generate_source_tarball.sh
|
||||
# where the source is obtained from http://hg.openjdk.java.net/%%{project}/%%{repo}
|
||||
Source1: %{shenandoah_project}-%{shenandoah_repo}-%{shenandoah_revision}.tar.xz
|
||||
Source0: %{shenandoah_project}-%{shenandoah_repo}-%{shenandoah_revision}.tar.xz
|
||||
|
||||
# Custom README for -src subpackage
|
||||
Source2: README.md
|
||||
@ -1152,8 +1146,6 @@ Patch575: 8197981-pr3548.patch
|
||||
Patch576: 8064786-pr3599.patch
|
||||
# 8062808, PR3548: Turn on the -Wreturn-type warning
|
||||
Patch577: 8062808-pr3548.patch
|
||||
# 8165852, PR3468: (fs) Mount point not found for a file which is present in overlayfs
|
||||
Patch210: 8165852-pr3468.patch
|
||||
# 8207057, PR3613: Enable debug information for assembly code files
|
||||
Patch206: 8207057-pr3613-hotspot-assembler-debuginfo.patch
|
||||
|
||||
@ -1180,11 +1172,6 @@ Patch565: 8185723-pr3553.patch
|
||||
Patch566: 8186461-pr3557.patch
|
||||
# 8201509, PR3579: Zero: S390 31bit atomic_copy64 inline assembler is wrong
|
||||
Patch569: 8201509-pr3579.patch
|
||||
# 8165489, PR3589: Missing G1 barrier in Unsafe_GetObjectVolatile
|
||||
Patch570: 8165489-pr3589.patch
|
||||
# 8196516, RH1538767: libfontmanager.so needs to be built with LDFLAGS so as to allow
|
||||
# linking with unresolved symbols.
|
||||
Patch531: 8196516-pr3523-rh1538767.patch
|
||||
# 8075942, PR3602: ArrayIndexOutOfBoundsException in sun.java2d.pisces.Dasher.goTo
|
||||
Patch578: 8075942-pr3602-rh1582032.patch
|
||||
# 8203182, PR3603: Release session if initialization of SunPKCS11 Signature fails
|
||||
@ -1218,8 +1205,12 @@ Patch539: pr2888.patch
|
||||
# PR3575, RH1567204: System cacerts database handling should not affect jssecacerts
|
||||
Patch540: pr3575-rh1567204.patch
|
||||
|
||||
#############################################
|
||||
#
|
||||
# Shenandoah fixes
|
||||
# PR3619: Shenandoah broken on s390
|
||||
Patch582: pr3619.patch
|
||||
# PR3620: Shenandoah broken on ppc64
|
||||
Patch583: pr3620.patch
|
||||
|
||||
# Non-OpenJDK fixes
|
||||
#
|
||||
#############################################
|
||||
@ -1528,17 +1519,7 @@ if [ $prioritylength -ne 7 ] ; then
|
||||
exit 14
|
||||
fi
|
||||
# For old patches
|
||||
ln -s openjdk jdk8
|
||||
%if %{use_shenandoah_hotspot}
|
||||
# On Shenandoah-supported architectures, replace HotSpot with
|
||||
# the Shenandoah version
|
||||
pushd openjdk
|
||||
tar -xf %{SOURCE1}
|
||||
rm -rf hotspot
|
||||
mv openjdk/hotspot .
|
||||
rm -rf openjdk
|
||||
popd
|
||||
%endif
|
||||
ln -s %{top_level_dir_name} jdk8
|
||||
|
||||
cp %{SOURCE2} .
|
||||
|
||||
@ -1563,7 +1544,6 @@ sh %{SOURCE12}
|
||||
%patch204
|
||||
%patch205
|
||||
%patch206
|
||||
%patch210
|
||||
|
||||
%patch300
|
||||
|
||||
@ -1612,9 +1592,6 @@ sh %{SOURCE12}
|
||||
%patch530
|
||||
%patch538
|
||||
%patch560
|
||||
pushd openjdk/jdk
|
||||
%patch531 -p1
|
||||
popd
|
||||
%patch561
|
||||
%patch562
|
||||
%patch563
|
||||
@ -1645,11 +1622,9 @@ popd
|
||||
%patch534
|
||||
%endif
|
||||
|
||||
# Shenandoah-only patches
|
||||
%if %{use_shenandoah_hotspot}
|
||||
%else
|
||||
%patch570
|
||||
%endif
|
||||
# Shenandoah patches
|
||||
%patch582
|
||||
%patch583
|
||||
|
||||
%patch1000
|
||||
|
||||
@ -2294,6 +2269,39 @@ require "copy_jdk_configs.lua"
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Aug 23 2018 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.181.b15-0
|
||||
- Move to single OpenJDK tarball build, based on aarch64/shenandoah-jdk8u.
|
||||
- Update to aarch64-shenandoah-jdk8u181-b15.
|
||||
- Drop 8165489-pr3589.patch which was only applied to aarch64/jdk8u builds.
|
||||
- Move buildver to where it should be in the OpenJDK version.
|
||||
- Split ppc64 Shenandoah fix into separate patch file with its own bug ID (PR3620).
|
||||
- Update pr3539-rh1548475.patch to apply after 8187045.
|
||||
- Resolves: rhbz#1594249
|
||||
|
||||
* Sat Aug 11 2018 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.181-8.b13
|
||||
- Remove unneeded functions from ppc shenandoahBarrierSet.
|
||||
- Resolves: rhbz#1594249
|
||||
|
||||
* Wed Aug 08 2018 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.181-8.b13
|
||||
- Add missing shenandoahBarrierSet implementation for ppc64{be,le}.
|
||||
- Resolves: rhbz#1594249
|
||||
|
||||
* Tue Aug 07 2018 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.181-8.b13
|
||||
- Fix wrong format specifiers in Shenandoah code.
|
||||
- Resolves: rhbz#1594249
|
||||
|
||||
* Tue Aug 07 2018 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.181-8.b13
|
||||
- Avoid changing variable types to fix size_t, at least for now.
|
||||
- Resolves: rhbz#1594249
|
||||
|
||||
* Tue Aug 07 2018 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.181-8.b13
|
||||
- More size_t fixes for Shenandoah.
|
||||
- Resolves: rhbz#1594249
|
||||
|
||||
* Fri Aug 03 2018 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.181-8.b13
|
||||
- Add additional s390 size_t case for Shenandoah.
|
||||
- Resolves: rhbz#1594249
|
||||
|
||||
* Wed Aug 01 2018 Jiri Vanek <jvanek@redhat.com> - 1:1.8.0.181.b13-7
|
||||
- build number moved from release to version
|
||||
|
||||
|
@ -85,8 +85,8 @@ diff --git openjdk.orig/hotspot/make/linux/makefiles/jsig.make openjdk/hotspot/m
|
||||
# cause problems with interposing. See CR: 6466665
|
||||
# LFLAGS_JSIG += $(MAPFLAG:FILENAME=$(LIBJSIG_MAPFILE))
|
||||
|
||||
-LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT $(LDFLAGS_HASH_STYLE)
|
||||
+LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT $(LDFLAGS_HASH_STYLE) $(EXTRA_LDFLAGS)
|
||||
-LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT $(LDFLAGS_HASH_STYLE) $(LDFLAGS_NO_EXEC_STACK)
|
||||
+LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT $(LDFLAGS_HASH_STYLE) $(LDFLAGS_NO_EXEC_STACK) $(EXTRA_LDFLAGS)
|
||||
|
||||
# DEBUG_BINARIES overrides everything, use full -g debug information
|
||||
ifeq ($(DEBUG_BINARIES), true)
|
||||
@ -105,7 +105,7 @@ diff --git openjdk.orig/hotspot/make/linux/makefiles/saproc.make openjdk/hotspot
|
||||
diff --git openjdk.orig/hotspot/make/linux/makefiles/vm.make openjdk/hotspot/make/linux/makefiles/vm.make
|
||||
--- openjdk.orig/hotspot/make/linux/makefiles/vm.make
|
||||
+++ openjdk/hotspot/make/linux/makefiles/vm.make
|
||||
@@ -130,7 +130,7 @@
|
||||
@@ -122,7 +122,7 @@
|
||||
|
||||
# Extra flags from gnumake's invocation or environment
|
||||
CFLAGS += $(EXTRA_CFLAGS)
|
||||
|
45
pr3619.patch
Normal file
45
pr3619.patch
Normal file
@ -0,0 +1,45 @@
|
||||
diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahAdaptiveHeuristics.cpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahAdaptiveHeuristics.cpp
|
||||
--- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahAdaptiveHeuristics.cpp
|
||||
+++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahAdaptiveHeuristics.cpp
|
||||
@@ -108,7 +108,7 @@
|
||||
step = MIN2(step, (intx) MaxNormalStep);
|
||||
|
||||
log_info(gc, ergo)("Capacity: " SIZE_FORMAT "M, Peak Occupancy: " SIZE_FORMAT
|
||||
- "M, Lowest Free: " SIZE_FORMAT "M, Free Threshold: " UINTX_FORMAT "M",
|
||||
+ "M, Lowest Free: " SIZE_FORMAT "M, Free Threshold: " SIZE_FORMAT "M",
|
||||
capacity / M, _peak_occupancy / M,
|
||||
(capacity - _peak_occupancy) / M, ShenandoahMinFreeThreshold * capacity / 100 / M);
|
||||
|
||||
diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahStaticHeuristics.cpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahStaticHeuristics.cpp
|
||||
--- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahStaticHeuristics.cpp
|
||||
+++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/heuristics/shenandoahStaticHeuristics.cpp
|
||||
@@ -36,7 +36,7 @@
|
||||
}
|
||||
|
||||
void ShenandoahStaticHeuristics::print_thresholds() {
|
||||
- log_info(gc, init)("Shenandoah heuristics thresholds: allocation "SIZE_FORMAT", free "SIZE_FORMAT", garbage "SIZE_FORMAT,
|
||||
+ log_info(gc, init)("Shenandoah heuristics thresholds: allocation "UINTX_FORMAT", free "UINTX_FORMAT", garbage "UINTX_FORMAT,
|
||||
ShenandoahAllocationThreshold,
|
||||
ShenandoahFreeThreshold,
|
||||
ShenandoahGarbageThreshold);
|
||||
diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.cpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.cpp
|
||||
--- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.cpp
|
||||
+++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.cpp
|
||||
@@ -539,7 +539,7 @@
|
||||
}
|
||||
size_t average_heap_size = (initial_heap_size + max_heap_size) / 2;
|
||||
region_size = MAX2(average_heap_size / ShenandoahTargetNumRegions,
|
||||
- ShenandoahMinRegionSize);
|
||||
+ (size_t) ShenandoahMinRegionSize);
|
||||
|
||||
// Now make sure that we don't go over or under our limits.
|
||||
region_size = MAX2(ShenandoahMinRegionSize, region_size);
|
||||
@@ -573,7 +573,7 @@
|
||||
// Otherwise, mem-protecting one region may falsely protect the adjacent
|
||||
// regions too.
|
||||
if (UseLargePages) {
|
||||
- region_size = MAX2(region_size, os::large_page_size());
|
||||
+ region_size = MAX2((size_t) region_size, os::large_page_size());
|
||||
}
|
||||
|
||||
int region_size_log = log2_long((jlong) region_size);
|
70
pr3620.patch
Normal file
70
pr3620.patch
Normal file
@ -0,0 +1,70 @@
|
||||
diff --git openjdk.orig/hotspot/make/excludeSrc.make openjdk/hotspot/make/excludeSrc.make
|
||||
--- openjdk.orig/hotspot/make/excludeSrc.make
|
||||
+++ openjdk/hotspot/make/excludeSrc.make
|
||||
@@ -121,6 +121,7 @@
|
||||
Src_Files_EXCLUDE += \
|
||||
shenandoahBarrierSet_x86.cpp \
|
||||
shenandoahBarrierSet_aarch64.cpp \
|
||||
+ shenandoahBarrierSet_ppc.cpp \
|
||||
shenandoahBarrierSet_sparc.cpp \
|
||||
shenandoahBarrierSet_zero.cpp
|
||||
endif
|
||||
diff --git openjdk.orig/hotspot/src/cpu/ppc/vm/shenandoahBarrierSet_ppc.cpp openjdk/hotspot/src/cpu/ppc/vm/shenandoahBarrierSet_ppc.cpp
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ openjdk/hotspot/src/cpu/ppc/vm/shenandoahBarrierSet_ppc.cpp
|
||||
@@ -0,0 +1,54 @@
|
||||
+/*
|
||||
+ * Copyright (c) 2018, Red Hat, Inc. and/or its affiliates.
|
||||
+ *
|
||||
+ * 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 "gc_implementation/shenandoah/brooksPointer.hpp"
|
||||
+#include "gc_implementation/shenandoah/shenandoahBarrierSet.inline.hpp"
|
||||
+
|
||||
+#include "asm/macroAssembler.hpp"
|
||||
+#include "interpreter/interpreter.hpp"
|
||||
+
|
||||
+#define __ masm->
|
||||
+
|
||||
+#ifndef CC_INTERP
|
||||
+
|
||||
+void ShenandoahBarrierSet::interpreter_read_barrier(MacroAssembler* masm, Register dst) {
|
||||
+ Unimplemented();
|
||||
+}
|
||||
+
|
||||
+void ShenandoahBarrierSet::interpreter_read_barrier_not_null(MacroAssembler* masm, Register dst) {
|
||||
+ Unimplemented();
|
||||
+}
|
||||
+
|
||||
+void ShenandoahBarrierSet::interpreter_write_barrier(MacroAssembler* masm, Register dst) {
|
||||
+ Unimplemented();
|
||||
+}
|
||||
+
|
||||
+void ShenandoahBarrierSet::asm_acmp_barrier(MacroAssembler* masm, Register op1, Register op2) {
|
||||
+ Unimplemented();
|
||||
+}
|
||||
+
|
||||
+void ShenandoahHeap::compile_prepare_oop(MacroAssembler* masm, Register obj) {
|
||||
+ Unimplemented();
|
||||
+}
|
||||
+#endif
|
3
sources
3
sources
@ -1,3 +1,2 @@
|
||||
SHA512 (systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz) = cf578221b77d8c7e019f69909bc86c419c5fb5e10bceba9592ff6e7f96887b0a7f07c9cefe90800975247a078785ca190fdec5c2d0f841bb447cee784b570f7d
|
||||
SHA512 (aarch64-port-jdk8u-aarch64-jdk8u181-b13.tar.xz) = d22ddb8b0b76faa18067fe383a147345be5fe1bad77b50940ff2993f3356166143e5ac9e14d9ead4437c13b00c6b2a5c62093ad57645da15a3419238990a74ac
|
||||
SHA512 (aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b13.tar.xz) = b5611a5b13a8aa3c0e07e015e39b11241f96124bb9454d4151c54d4e9af004ea038cc3a27e3b9099b3061bb9225cb298551e0e726f79bc9bc9837aa912f1586c
|
||||
SHA512 (aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b15.tar.xz) = d8cdb9b7ef129ba8a07332ca3e4c56ad9e6cc84c4977cbad601b67deeecec44c0f3b95f219d603e063bd7b89bf6515151111fe021cf36132b9b4cc47c1d1d12c
|
||||
|
Loading…
Reference in New Issue
Block a user