diff --git a/.gitignore b/.gitignore index a27ca58..1a1ae81 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/shenandoah-jdk11-shenandoah-jdk-11.0.6+10.tar.xz +SOURCES/shenandoah-jdk11-shenandoah-jdk-11.0.6+10-4curve.tar.xz SOURCES/systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz diff --git a/.java-11-openjdk.metadata b/.java-11-openjdk.metadata index 40c5074..50be816 100644 --- a/.java-11-openjdk.metadata +++ b/.java-11-openjdk.metadata @@ -1,2 +1,2 @@ -46672ad972c89177ff640feaef1a4161c43984f7 SOURCES/shenandoah-jdk11-shenandoah-jdk-11.0.6+10.tar.xz +770fb5e2a0c18da9239ffdd4d0511fb0f5a6a2b6 SOURCES/shenandoah-jdk11-shenandoah-jdk-11.0.6+10-4curve.tar.xz cd8bf91753b9eb1401cfc529e78517105fc66011 SOURCES/systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz diff --git a/SOURCES/jdk8237396-avoid_triggering_barriers.patch b/SOURCES/jdk8237396-avoid_triggering_barriers.patch new file mode 100644 index 0000000..90d7c65 --- /dev/null +++ b/SOURCES/jdk8237396-avoid_triggering_barriers.patch @@ -0,0 +1,58 @@ +# HG changeset patch +# User zgu +# Date 1579696811 18000 +# Wed Jan 22 07:40:11 2020 -0500 +# Node ID 91ea567eeabeade6b3f8d6cf10c02ba53f700eca +# Parent 082f1d3eb1649ff776cda165ed78d65bc7361ebc +8237396: JvmtiTagMap::weak_oops_do() should not trigger barriers +Reviewed-by: stefank, rkennke + +diff --git a/src/hotspot/share/prims/jvmtiTagMap.cpp b/src/hotspot/share/prims/jvmtiTagMap.cpp +--- a/src/hotspot/share/prims/jvmtiTagMap.cpp ++++ b/src/hotspot/share/prims/jvmtiTagMap.cpp +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2003, 2020, 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 +@@ -96,6 +96,11 @@ + inline oop object_peek() { + return NativeAccess::oop_load(object_addr()); + } ++ ++ inline oop object_raw() { ++ return RawAccess<>::oop_load(object_addr()); ++ } ++ + inline jlong tag() const { return _tag; } + + inline void set_tag(jlong tag) { +@@ -3357,7 +3362,7 @@ + JvmtiTagHashmapEntry* next = entry->next(); + + // has object been GC'ed +- if (!is_alive->do_object_b(entry->object_peek())) { ++ if (!is_alive->do_object_b(entry->object_raw())) { + // grab the tag + jlong tag = entry->tag(); + guarantee(tag != 0, "checking"); +@@ -3375,7 +3380,7 @@ + ++freed; + } else { + f->do_oop(entry->object_addr()); +- oop new_oop = entry->object_peek(); ++ oop new_oop = entry->object_raw(); + + // if the object has moved then re-hash it and move its + // entry to its new location. +@@ -3409,7 +3414,7 @@ + // Re-add all the entries which were kept aside + while (delayed_add != NULL) { + JvmtiTagHashmapEntry* next = delayed_add->next(); +- unsigned int pos = JvmtiTagHashmap::hash(delayed_add->object_peek(), size); ++ unsigned int pos = JvmtiTagHashmap::hash(delayed_add->object_raw(), size); + delayed_add->set_next(table[pos]); + table[pos] = delayed_add; + delayed_add = next; diff --git a/SPECS/java-11-openjdk.spec b/SPECS/java-11-openjdk.spec index e05a0d1..a6b540e 100644 --- a/SPECS/java-11-openjdk.spec +++ b/SPECS/java-11-openjdk.spec @@ -211,7 +211,7 @@ %global top_level_dir_name %{origin} %global minorver 0 %global buildver 10 -%global rpmrelease 1 +%global rpmrelease 3 #%%global tagsuffix %{nil} # priority must be 7 digits in total # setting to 1, so debug ones can have 0 @@ -908,7 +908,7 @@ URL: http://openjdk.java.net/ # to regenerate source0 (jdk) and source8 (jdk's taspets) run update_package.sh # update_package.sh contains hard-coded repos, revisions, tags, and projects to regenerate the source archives -Source0: shenandoah-jdk%{majorver}-shenandoah-jdk-%{newjavaver}+%{buildver}%{?tagsuffix:-%{tagsuffix}}.tar.xz +Source0: shenandoah-jdk%{majorver}-shenandoah-jdk-%{newjavaver}+%{buildver}%{?tagsuffix:-%{tagsuffix}}-4curve.tar.xz Source8: systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz # Desktop files. Adapted from IcedTea @@ -949,6 +949,8 @@ Patch4: pr3183-rh1340845-support_fedora_rhel_system_crypto_policy.patch # Shenandoah specific patches # ############################################# +# JDK-8237396: JvmtiTagMap::weak_oops_do() should not trigger barriers +Patch10: jdk8237396-avoid_triggering_barriers.patch ############################################# # @@ -984,13 +986,6 @@ BuildRequires: freetype-devel BuildRequires: giflib-devel BuildRequires: gcc-c++ BuildRequires: gdb -%ifarch %{arm} -BuildRequires: devtoolset-7-build -BuildRequires: devtoolset-7-binutils -BuildRequires: devtoolset-7-gcc -BuildRequires: devtoolset-7-gcc-c++ -BuildRequires: devtoolset-7-gdb -%endif BuildRequires: gtk2-devel # LCMS on rhel7 is older then LCMS in intree JDK BuildRequires: lcms2-devel @@ -1245,6 +1240,7 @@ pushd %{top_level_dir_name} %patch7 -p1 %patch8 -p1 %patch9 -p1 +%patch10 -p1 popd # openjdk %patch1000 @@ -1295,10 +1291,6 @@ sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE11} > nss.cfg %build -%ifarch %{arm} -%{?enable_devtoolset7:%{enable_devtoolset7}} -%endif - # How many CPU's do we have? export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :) export NUM_PROC=${NUM_PROC:-1} @@ -1798,39 +1790,112 @@ require "copy_jdk_configs.lua" %endif %changelog -* Sat Jan 11 2020 Andrew John Hughes - 1:11.0.6.10-1 +* Sun Feb 16 2020 Andrew Hughes - 1:11.0.6.10-3 +- Add JDK-8237396 backport to resolve Shenandoah TCK breakage in traversal mode. +- Resolves: rhbz#1785753 + +* Sat Jan 11 2020 Andrew John Hughes - 1:11.0.6.10-2 - Add JDK-8236039 backport to resolve OpenShift blocker - Resolves: rhbz#1785753 -* Thu Jan 09 2020 Andrew Hughes - 1:11.0.6.10-0 +* Thu Jan 09 2020 Andrew Hughes - 1:11.0.6.10-1 - Update to shenandoah-jdk-11.0.6+10 (GA) - Switch to GA mode for final release. - Resolves: rhbz#1785753 +* Thu Jan 09 2020 Andrew Hughes - 1:11.0.6.9-0.1.ea +- Update to shenandoah-jdk-11.0.6+9 (EA) +- Resolves: rhbz#1785753 + +* Wed Jan 08 2020 Andrew Hughes - 1:11.0.6.8-0.1.ea +- Update to shenandoah-jdk-11.0.6+8 (EA) +- Resolves: rhbz#1785753 + +* Wed Jan 08 2020 Andrew Hughes - 1:11.0.6.7-0.1.ea +- Update to shenandoah-jdk-11.0.6+7 (EA) +- Resolves: rhbz#1785753 + +* Wed Jan 08 2020 Andrew Hughes - 1:11.0.6.6-0.1.ea +- Update to shenandoah-jdk-11.0.6+6 (EA) +- Resolves: rhbz#1785753 + +* Tue Jan 07 2020 Andrew Hughes - 1:11.0.6.5-0.1.ea +- Update to shenandoah-jdk-11.0.6+5 (EA) +- Resolves: rhbz#1785753 + +* Mon Jan 06 2020 Andrew Hughes - 1:11.0.6.4-0.1.ea +- Update to shenandoah-jdk-11.0.6+4 (EA) +- Resolves: rhbz#1785753 + +* Fri Jan 03 2020 Andrew Hughes - 1:11.0.6.3-0.1.ea +- Update to shenandoah-jdk-11.0.6+3 (EA) +- Resolves: rhbz#1785753 + +* Mon Dec 30 2019 Andrew Hughes - 1:11.0.6.2-0.1.ea +- Update to shenandoah-jdk-11.0.6+2 (EA) +- Resolves: rhbz#1785753 + * Thu Dec 19 2019 Andrew Hughes - 1:11.0.6.1-0.1.ea - Update to shenandoah-jdk-11.0.6+1 (EA) - Switch to EA mode for 11.0.6 pre-release builds. - Add support for jfr binary. - Resolves: rhbz#1785753 -* Wed Oct 09 2019 Andrew Hughes - 1:11.0.5.10-0 +* Wed Oct 09 2019 Andrew Hughes - 1:11.0.5.10-1 - Update to shenandoah-jdk-11.0.5+10 (GA) - Switch to GA mode for final release. -- Remove PR1834/RH1022017 which is now handled by JDK-8228825 upstream. - Resolves: rhbz#1753423 -* Wed Oct 09 2019 Andrew Hughes - 1:11.0.5.9-0.0.ea +* Mon Oct 07 2019 Andrew Hughes - 1:11.0.5.9-0.1.ea - Update to shenandoah-jdk-11.0.5+9 (EA) -- Resolves: rhbz#1753423 +- Resolves: rhbz#1737117 + +* Sun Oct 06 2019 Andrew Hughes - 1:11.0.5.8-0.1.ea +- Update to shenandoah-jdk-11.0.5+8 (EA) +- Resolves: rhbz#1737117 + +* Fri Oct 04 2019 Andrew Hughes - 1:11.0.5.7-0.1.ea +- Update to shenandoah-jdk-11.0.5+7 (EA) +- Resolves: rhbz#1737117 + +* Wed Oct 02 2019 Andrew Hughes - 1:11.0.5.6-0.1.ea +- Update to shenandoah-jdk-11.0.5+6 (EA) +- Resolves: rhbz#1737117 -* Fri Sep 06 2019 Andrew John Hughes - 1:11.0.5.2-0.0.ea +* Tue Sep 17 2019 Andrew Hughes - 1:11.0.5.5-0.1.ea +- Update to shenandoah-jdk-11.0.5+5 (EA) +- Resolves: rhbz#1737117 + +* Wed Sep 11 2019 Andrew Hughes - 1:11.0.5.4-0.1.ea +- Revert rpmdev-bumpspec workaround as it has consequences for RPM installation. +- Resolves: rhbz#1737117 + +* Mon Sep 09 2019 Andrew Hughes - 1:11.0.5.4-0.1.ea +- Update to shenandoah-jdk-11.0.5+4 (EA) +- Resolves: rhbz#1737117 + +* Thu Sep 05 2019 Andrew Hughes - 1:11.0.5.3-0.1.ea +- Use 'release' rather than 'rpmrelease' for the release variable so rpmdev-bumpspec works again. +- Resolves: rhbz#1737117 + +* Thu Sep 05 2019 Andrew Hughes - 1:11.0.5.3-0.1.ea +- Update to shenandoah-jdk-11.0.5+3 (EA) +- Resolves: rhbz#1737117 + +* Tue Aug 27 2019 Andrew Hughes - 1:11.0.5.2-0.2.ea +- Update generate_source_tarball.sh script to use the PR3751 patch and retain the secp256k1 curve. +- Regenerate source tarball using the updated script and add the -'4curve' suffix. +- PR3751 includes the changes in the PR1834/RH1022017 patch which is removed. +- Resolves: rhbz#1699068 + +* Sat Aug 24 2019 Andrew Hughes - 1:11.0.5.2-0.1.ea - Update to shenandoah-jdk-11.0.5+2 (EA) -- Resolves: rhbz#1753423 +- Resolves: rhbz#1737117 -* Mon Aug 12 2019 Andrew Hughes - 1:11.0.5.1-0.0.ea +* Mon Aug 12 2019 Andrew Hughes - 1:11.0.5.1-0.1.ea - Update to shenandoah-jdk-11.0.5+1 (EA) - Switch to EA mode for 11.0.5 pre-release builds. -- Resolves: rhbz#1753423 +- Resolves: rhbz#1737117 * Tue Jul 09 2019 Andrew Hughes - 1:11.0.4.11-1 - Update to shenandoah-jdk-11.0.4+11 (GA)