From c8c45a0ca95ccd84f0705c5b8ebc24150b083d87 Mon Sep 17 00:00:00 2001 From: Andrew Hughes Date: Mon, 24 Jun 2019 15:23:59 +0100 Subject: [PATCH] Update to aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30. Update version logic to handle -shenandoah* tag suffix. Drop PR3634 as applied upstream. Adjust 8214206 fix for S390 as BinaryMagnitudeSeq moved to shenandoahNumberSeq.cpp Update 8214206 to use log2_long rather than casting to intptr_t, which may be smaller than size_t. --- .gitignore | 1 + java-1.8.0-openjdk.spec | 20 ++++++++----- ...34-fix_shenandoah_for_size_t_on_s390.patch | 14 ---------- s390-8214206_fix.patch | 28 +++++++++---------- sources | 2 +- 5 files changed, 29 insertions(+), 36 deletions(-) delete mode 100644 pr3634-fix_shenandoah_for_size_t_on_s390.patch diff --git a/.gitignore b/.gitignore index d1072b7..faa17a0 100644 --- a/.gitignore +++ b/.gitignore @@ -137,3 +137,4 @@ /aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b02.tar.xz /aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b03.tar.xz /aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b04.tar.xz +/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30.tar.xz diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec index 3e35984..7b6fd58 100644 --- a/java-1.8.0-openjdk.spec +++ b/java-1.8.0-openjdk.spec @@ -226,7 +226,7 @@ # note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there. %global shenandoah_project aarch64-port %global shenandoah_repo jdk8u-shenandoah -%global shenandoah_revision aarch64-shenandoah-jdk8u212-b04 +%global shenandoah_revision aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30 # Define old aarch64/jdk8u tree variables for compatibility %global project %{shenandoah_project} %global repo %{shenandoah_repo} @@ -234,12 +234,14 @@ # Define IcedTea version used for SystemTap tapsets and desktop files %global icedteaver 3.11.0 +# e.g. aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30 -> aarch64-shenandoah-jdk8u212-b04 +%global version_tag %(VERSION=%{revision}; echo ${VERSION%%-shenandoah*}) # 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=%{version_tag}; echo ${VERSION%%-*}) # eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60 %global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u}) # eg jdk8u60-b27 -> b27 -%global buildver %(VERSION=%{revision}; echo ${VERSION##*-}) +%global buildver %(VERSION=%{version_tag}; echo ${VERSION##*-}) # priority must be 7 digits in total. The expression is workarounding tip %global priority %(TIP=1800%{updatever}; echo ${TIP/tip/999}) @@ -986,7 +988,7 @@ Provides: java-%{javaver}-%{origin}-accessibility = %{epoch}:%{version}-%{releas Name: java-%{javaver}-%{origin} Version: %{javaver}.%{updatever}.%{buildver} -Release: 4%{?dist} +Release: 5%{?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 @@ -1228,8 +1230,6 @@ Patch201: jdk8043805-allow_using_system_installed_libjpeg.patch # and should be upstreamed to the appropriate # trees. ############################################# -# PR3634: Shenandoah still broken on s390 with aarch64-shenandoah-jdk8u181-b16 -Patch582: pr3634-fix_shenandoah_for_size_t_on_s390.patch ############################################# # @@ -1621,7 +1621,6 @@ sh %{SOURCE12} %endif # Shenandoah patches -%patch582 %patch1000 @@ -2270,6 +2269,13 @@ require "copy_jdk_configs.lua" %endif %changelog +* Fri Jun 14 2019 Andrew John Hughes - 1:1.8.0.212.b04-5 +- Update to aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30. +- Update version logic to handle -shenandoah* tag suffix. +- Drop PR3634 as applied upstream. +- Adjust 8214206 fix for S390 as BinaryMagnitudeSeq moved to shenandoahNumberSeq.cpp +- Update 8214206 to use log2_long rather than casting to intptr_t, which may be smaller than size_t. + * Wed May 22 2019 Andrew John Hughes - 1:1.8.0.212.b04-4 - Remove additions to EXTRA_CFLAGS and EXTRA_CPP_FLAGS which are now made by upstream. - Remove -mstackrealign addition which is handled by PR3533 & PR3591 patches. diff --git a/pr3634-fix_shenandoah_for_size_t_on_s390.patch b/pr3634-fix_shenandoah_for_size_t_on_s390.patch deleted file mode 100644 index 20a4625..0000000 --- a/pr3634-fix_shenandoah_for_size_t_on_s390.patch +++ /dev/null @@ -1,14 +0,0 @@ -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 -@@ -524,8 +524,8 @@ - region_size = max_heap_size / ShenandoahTargetNumRegions; - - // Now make sure that we don't go over or under our limits. -- region_size = MAX2(ShenandoahMinRegionSize, region_size); -- region_size = MIN2(ShenandoahMaxRegionSize, region_size); -+ region_size = MAX2(ShenandoahMinRegionSize, region_size); -+ region_size = MIN2(ShenandoahMaxRegionSize, region_size); - - } else { - if (ShenandoahHeapRegionSize > initial_heap_size / MIN_NUM_REGIONS) { diff --git a/s390-8214206_fix.patch b/s390-8214206_fix.patch index 93f12de..42902cf 100644 --- a/s390-8214206_fix.patch +++ b/s390-8214206_fix.patch @@ -7,10 +7,22 @@ diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1BiasedArray. address base = create_new_base_array(num_target_elems, target_elem_size_in_bytes); - initialize_base(base, num_target_elems, bias, target_elem_size_in_bytes, log2_intptr(mapping_granularity_in_bytes)); + initialize_base(base, num_target_elems, bias, target_elem_size_in_bytes, -+ log2_intptr((uintptr_t) mapping_granularity_in_bytes)); ++ log2_long(mapping_granularity_in_bytes)); } size_t bias() const { return _bias; } +diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp ++++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp +@@ -135,7 +135,7 @@ + void BinaryMagnitudeSeq::add(size_t val) { + Atomic::add(val, &_sum); + +- int mag = log2_intptr(val) + 1; ++ int mag = log2_long(val) + 1; + + // Defensively saturate for product bits: + if (mag < 0) { diff --git openjdk.orig/hotspot/src/share/vm/runtime/os.cpp openjdk/hotspot/src/share/vm/runtime/os.cpp --- openjdk.orig/hotspot/src/share/vm/runtime/os.cpp +++ openjdk/hotspot/src/share/vm/runtime/os.cpp @@ -19,19 +31,7 @@ diff --git openjdk.orig/hotspot/src/share/vm/runtime/os.cpp openjdk/hotspot/src/ void os::set_memory_serialize_page(address page) { - int count = log2_intptr(sizeof(class JavaThread)) - log2_int(64); -+ int count = log2_intptr((uintptr_t) sizeof(class JavaThread)) - log2_int(64); ++ int count = log2_long(sizeof(class JavaThread)) - log2_int(64); _mem_serialize_page = (volatile int32_t *)page; // We initialize the serialization page shift count here // We assume a cache line size of 64 bytes -diff --git openjdk.orig/hotspot/src/share/vm/utilities/numberSeq.cpp openjdk/hotspot/src/share/vm/utilities/numberSeq.cpp ---- openjdk.orig/hotspot/src/share/vm/utilities/numberSeq.cpp -+++ openjdk/hotspot/src/share/vm/utilities/numberSeq.cpp -@@ -369,7 +369,7 @@ - void BinaryMagnitudeSeq::add(size_t val) { - Atomic::add(val, &_sum); - -- int mag = log2_intptr(val) + 1; -+ int mag = log2_intptr((uintptr_t) val) + 1; - - // Defensively saturate for product bits: - if (mag < 0) { diff --git a/sources b/sources index bc68672..2064a52 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (tapsets-icedtea-3.11.0.tar.xz) = f98420b2f9d7a0fc0af3a7e6a817c4330169db9378d9c38db56b0dd8281a3f1ff7747b4da0c66194695ca85a470b7963902d863d301e5e290dbfe11f6b6f2b5e -SHA512 (aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b04.tar.xz) = ebcb028fdbcd414bc13d8dc5e331b4a6be2026e19eed5c903eecc02929fde8829fca8aa430220319df7f772f5c4d9689739d5f41ce35c4e542641ab2bfcd6c51 +SHA512 (aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30.tar.xz) = 8ef6029cfa053fce7e0f73aab72b287a4505b06d6e2f1153e5c903a48ba89147fc187987f58d6eb737ede9d5c76a8925f22c34a4f5c3d757674c06fccf77c21b