Mercurial > hg > icedtea8
changeset 2911:42f2d07eb541
Bump shenandoah to aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30.
Upstream changes:
- [backport] 8210879: ClassLoaderStatsClosure does raw oop comparison
- [backport] 8216973: Kick up cleanup phases in the right places
- [backport] 8217043: Shenandoah: SIGSEGV in Type::meet_helper() at barrier expansion time
- [backport] 8217213: shenandoahTaskQueue.hpp includes .inline.hpp file
- [backport] 8217319: Cleanup Shenandoah includes
- [backport] 8217343: Shenandoah control thread should be able to run at critical priority
- [backport] 8217400: Optimized build is broken by Shenandoah changes
- [backport] 8219524: Shenandoah misreports "committed" size in MemoryMXBean
- [backport] 8219857: Shenandoah GC may initialize thread's gclab twice
- [backport] 8219976: GarbageCollectionNotificationInfo always says "No GC" when running Shenandoah
- [backport] 8220153: Shenandoah does not work with TransparentHugePages properly
- [backport] 8220162: Shenandoah should not commit HugeTLBFS memory
- [backport] 8220228: Improve Shenandoah pacing histogram message
- [backport] 8220350: Refactor ShenandoahHeap::initialize
- [backport] 8220712: [TESTBUG] gc/shenandoah/compiler/TestMaybeNullUnsafeAccess should run with Shenandoah enabled
- [backport] 8222130: Shenandoah should verify roots after pre-evacuation
- [backport] 8222185: Shenandoah should report "committed" as capacity
- [backport] 8222186: Shenandoah should not uncommit below minimum heap size
- [backport] 8222838: Shenandoah: SEGV on accessing cset bitmap for NULL ptr
- [backport] 8222843: Print Shenandoah cset map addresses in hs_err
- [backport] Added a few missed worker sessions for worker tasks
- [backport] Add JFR parallel and concurrent events (infrastructure)
- [backport] Adjust metaspace size during each GC
- [backport] A few more missing object equals barriers
- [backport] Always copy forward for disjoint arrays (test)
- [backport] Assert that Shenandoah does not trip JDK-8211926
- [backport] Avoid false sharing by padding the ShenandoahEvacOOMHandler field in ShenandoahHeap
- [backport] Avoid write barrier during full GC
- [backport] Beef up and parallelize EvilSyncBug test
- [backport] c2 verification pass fixes for CAS
- [backport] Cherry-pick bulk MarkBitMap clearing methods
- [backport] Cherry-pick JDK-8212673, fix for Node::eqv_uncast
- [backport] Cleanup .ad files includes
- [backport] Clean up and regroup Shenandoah flags
- [backport] Cleanup buffered queue handling
- [backport] Cleanup C2 debugging leftovers
- [backport] Clean up dead code
- [backport] Clean up declarations and uses of marked_object_iterate
- [backport] Cleanup header files and forward declarations
- [backport] Clean up Shenandoah configurations in shared tests
- [backport] Clean up ShHeap::heap_region_iterate uses
- [backport] Cleanup unused bitmap methods
- [backport] Cleanup up superfluous newlines
- [backport] Coarsen Full GC use of heap lock
- [backport] Code root iterators should not be instantiated in worker threads
- [backport] Common liveness cache in ShHeap
- [backport] Compact heuristics adjustments
- [backport] Concurrent cycle by default on any external GC request
- [backport] Disable heap iteration for Shenandoah in SA
- [backport] Disable ShHeapUncommit on too-large large-pages
- [backport] Drop Shenandoah from test names
- [backport] Eliminating Shenandoah exposure to CLD
- [backport] Enable NUMA by default
- [backport] Enable string deduplication in all marking phases
- [backport] Factor out implicit/explicit GC requests
- [backport] Fail early when critical barriers are disabled
- [backport] Filter out TestPromotionToSurvivor.java test for Shenandoah
- [backport] Filter upstream tests for Shenandoah (part 1: tier1_gc)
- [backport] Fix build failures when Shenandoah is disabled, after #include reshuffles
- [backport] Fix call to is_g1_marking_load() with is_shenandoah_state_load() in ShenandoahSupport
- [backport] Fix compilation errors due to missing spaces between string literal and macro
- [backport] Fixed ShenandoahStrDedupStress test that causes negative index OOB exception
- [backport] Fix inconsistent "process weakrefs" logging
- [backport] Fix indentation of CriticalNative* tests
- [backport] Fix indenting in ShMarkCompact::do_it
- [backport] Fix up superfluous changes against upstream
- [backport] Fix various formattings and namings in shared GC code
- [backport] Fix Windows build failure
- [backport] Force termination logic is inverted
- [backport] Handle metadata induced GC
- [backport] Handle ShHeap::time_since_last_millis for RMI users
- [backport] Handle update_refs, class_unload, ref_proc in ShConcMark better
- [backport] Homogenize unimplemented stubs handling
- [backport] Improve liveness count during marking
- [backport] Initial committed regions count can be more than max
- [backport] Inline/rename confusingly named methods in ShConcurrentMark
- [backport] Inline ShHeap::do_marked_object_complete
- [backport] Inline ShHeap::monitoring_support into header
- [backport] Inline ShHeap::prepare_concurrent_evacuation
- [backport] Inline trivial ShHeap methods right in header
- [backport] In update-refs, update all code-roots when in degen-gc
- [backport] JVMTI lacks a few GC barriers/hooks
- [backport] Make heuristics tell if we can process references or unload classes
- [backport] Make ResourceMark use consistent in ShenandoahCodeRoots
- [backport] Make Shenandoah to use ShenandoahOWST only
- [backport] Make sure bitmap is marked incomplete before bitmap resets
- [backport] Make sure debug builds fail predictably on safepoint timeout
- [backport] Micro-optimize ShHeap::get_region by moving the most likely branch first
- [backport] Minor cleanup of Shenandoah SA
- [backport] Missed VerifyObjectEquals in VerifyJCStressTest
- [backport] More AArch64 assembler cleanups
- [backport] Move HdrSeq and BinaryMagnitudeSeq into Shenandoah utilities
- [backport] Move ShenandoahAllocType and ShenandoahAllocRequest to separate file
- [backport] Move ShenandoahGCTracer to gc/shenandoah
- [backport] Move Shenandoah tests to proper locations
- [backport] Need to step over GC barriers in Node::eqv_uncast()
- [backport] Parallel heap region iteration
- [backport] Parallelise "Clear Liveness"
- [backport] Parallelise "Complete Liveness"
- [backport] Partial infrastructure for suspendible workers
- [backport] Precleaning should use GC workers to do actual work
- [backport] Pre-evac JVMTI roots + fixes
- [backport] Prefix Shenandoah tests with "Test"
- [backport] Prepare tests for making UseShenandoahGC experimental
- [backport] Print number of threads in Shenandoah SA heap summary
- [backport] Print "process weakrefs" to disambiguate vs CM-with-UR
- [backport] Protect more internal code from false sharing
- [backport] Protect risky conversion in ShenandoahHeap::millis_since_last_gc
- [backport] Purge some G1-related cruft in C2
- [backport] Purge unnecessary time conversion in ShenandoahPhaseTimings::record_phase_time
- [backport] Readjust ShenandoahStrDedupStress test to avoid timeout
- [backport] Record location when asserting the code root correctness
- [backport] Refactor bitmap cleaning
- [backport] Reformat Shenandoah tests
- [backport] Rehash and cleanup usages of ShenandoahHeap::heap()
- [backport] Re-label Shenandoah GC causes (SA&GC)
- [backport] Remove dead-weight ShenandoahPrinter
- [backport] Remove fix-roots pass in ShHeap
- [backport] Remove obsolete and ignored TestHeapAlloc
- [backport] Remove obsolete code snippet related to barriers on constants
- [backport] Remove obsolete unused flags
- [backport] Remove old code from escape analysis
- [backport] Remove Parallel Cleanup counters
- [backport] Remove ShenandoahCompileCheck
- [backport] Remove ShenandoahWriteBarrierCsetTestInIR flag
- [backport] Remove ShenandoahWriteBarrierRB flag
- [backport] Remove ShHeap::_heap_expansion_count
- [backport] Remove ShHeap::region_in_collection_set in favor of SHR::in_cset
- [backport] Remove ShWB from formssel.cpp
- [backport] Remove unused SA ShenandoahHeapRegionSet.java
- [backport] Remove unused ShenandoahEvacuateRootsClosure
- [backport] remove useless change in loopnode.cpp
- [backport] Remove useless ShHeap::heap_region_iterate
- [backport] Rename BrooksPointer to ShenandoahBrooksPointer
- [backport] Rename concurrentMark -> concurrent_mark
- [backport] Rename fields in (SA) ShenandoahHeap.java to omit 'Regions' and 'Field' suffix
- [backport] Rename ShHeap::shenandoahPolicy -> ShHeap::shenandoah_policy
- [backport] Rename UINT64_FORMAT_HEX_W to UINT64_FORMAT_X_W
- [backport] Rename VerifyObjectEquals to ShenandoahVerifyObjectEquals
- [backport] Rename vm_operations_shenandoah.* to shenandoahVMOperations.*
- [backport] Renaming ShenandoahParallelEvacuationTask to ShenandoahConcurrentEvacuationTask
- [backport] Separate "passive" heuristics from "adaptive"
- [backport] Several AArch64 cleanups
- [backport] ShenandoahMemoryPool should support usage threshold
- [backport] Shenandoah should @require Shenandoah, @key gc, and have good @test
- [backport] Shenandoah test groups should not include each other
- [backport] Silence VSC++ about multiple assignment operators
- [backport] Simplify Shenandoah task termination in aborted paths
- [backport] Single marking bitmap
- [backport] Skip pre-evac verification and pacing on shortcut cycle path
- [backport] Some Shenandoah related additions to SA
- [backport] Sort ShenandoahConcurrentMark methods/fields into logical groups
- [backport] Sort ShenandoahHeap methods/fields into logical groups
- [backport] StringDedupMode enum for closures/method templates
- [backport] Support VerifyBeforeGC and VerifyAfterGC VM options
- [backport] Suppressing VSC++ warning locally
- [backport] Trim down oop-equals verification
- [backport] Trim unused code from Shenandoah SA
- [backport] Turn TestReferenceCAS into a standalone/no-testng test
- [backport] Update copyrights
- [backport] Use ShenandoahAllocationThreshold in ShenandoahStaticHeuristics constructor
- [backport] Use s-macro to keep GC phase enum and names in sync
- Cast Shenandoah{Min,Max}RegionSize to size_t
- Enable heap inspection for Shenandoah
- Excess barriers before JNI accesses, already covered by "Move barriers into typeArrayOop.hpp direct memory accessors"
- Fix build failure due to unknown INCLUDE_SHENANDOAHGC
- Fix dangling write-barrier in acmp
- Fix force termination detection by spin master
- Fix Minimal VM build
- Fix non-PCH builds
- Fix shutdown deadlock due to blocking SATB flush periodic task
- JDK8u-only: Use WB-based acmp barrier
- Prettify Shenandoah JDK 8 logging
- ShenandoahSATBBufferSize cannot be size_t in 8u
ChangeLog:
2019-05-23 Andrew John Hughes <gnu_andrew@member.fsf.org>
Bump shenandoah to aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30.
* patches/hotspot/shenandoah/pr3634.patch:
Drop s390 fix now included upstream.
* Makefile.am:
(ICEDTEA_PATCHES): Drop PR3634.
* NEWS: Updated.
* hotspot.map.in: Bump shenandoah to
aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30.
* patches/hotspot/shenandoah/8222286-pr3727-s390-shenandoah.patch:
Update patch to act on new file shenandoahNumberSeq.cpp where
Shenandoah-only functions have been moved to. Use log2_long instead
of log2_intptr with a cast.
author | Andrew John Hughes <gnu_andrew@member.fsf.org> |
---|---|
date | Fri, 24 May 2019 16:16:05 +0100 |
parents | b526a6e9cf27 |
children | cd7a5558ad31 |
files | ChangeLog Makefile.am NEWS hotspot.map.in patches/hotspot/shenandoah/8222286-pr3727-s390-shenandoah.patch patches/hotspot/shenandoah/pr3634.patch |
diffstat | 6 files changed, 198 insertions(+), 25 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Thu May 09 22:19:46 2019 +0100 +++ b/ChangeLog Fri May 24 16:16:05 2019 +0100 @@ -1,3 +1,18 @@ +2019-05-23 Andrew John Hughes <gnu_andrew@member.fsf.org> + + Bump shenandoah to aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30. + * patches/hotspot/shenandoah/pr3634.patch: + Drop s390 fix now included upstream. + * Makefile.am: + (ICEDTEA_PATCHES): Drop PR3634. + * NEWS: Updated. + * hotspot.map.in: Bump shenandoah to + aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30. + * patches/hotspot/shenandoah/8222286-pr3727-s390-shenandoah.patch: + Update patch to act on new file shenandoahNumberSeq.cpp where + Shenandoah-only functions have been moved to. Use log2_long instead + of log2_intptr with a cast. + 2019-05-09 Andrew John Hughes <gnu_andrew@member.fsf.org> Start 3.13.0 release cycle.
--- a/Makefile.am Thu May 09 22:19:46 2019 +0100 +++ b/Makefile.am Fri May 24 16:16:05 2019 +0100 @@ -393,8 +393,7 @@ ICEDTEA_PATCHES += \ patches/hotspot/$(HSBUILD)/8158260-pr2991-rh1341258-aarch64.patch \ patches/hotspot/$(HSBUILD)/8222286-pr3727-s390-shenandoah.patch \ - patches/hotspot/$(HSBUILD)/pr3519-return_value-02.patch \ - patches/hotspot/$(HSBUILD)/pr3634.patch + patches/hotspot/$(HSBUILD)/pr3519-return_value-02.patch endif else ICEDTEA_PATCHES += \
--- a/NEWS Thu May 09 22:19:46 2019 +0100 +++ b/NEWS Fri May 24 16:16:05 2019 +0100 @@ -12,6 +12,181 @@ New in release 3.13.0 (2019-07-XX): +* Shenandoah + - [backport] 8210879: ClassLoaderStatsClosure does raw oop comparison + - [backport] 8216973: Kick up cleanup phases in the right places + - [backport] 8217043: Shenandoah: SIGSEGV in Type::meet_helper() at barrier expansion time + - [backport] 8217213: shenandoahTaskQueue.hpp includes .inline.hpp file + - [backport] 8217319: Cleanup Shenandoah includes + - [backport] 8217343: Shenandoah control thread should be able to run at critical priority + - [backport] 8217400: Optimized build is broken by Shenandoah changes + - [backport] 8219524: Shenandoah misreports "committed" size in MemoryMXBean + - [backport] 8219857: Shenandoah GC may initialize thread's gclab twice + - [backport] 8219976: GarbageCollectionNotificationInfo always says "No GC" when running Shenandoah + - [backport] 8220153: Shenandoah does not work with TransparentHugePages properly + - [backport] 8220162: Shenandoah should not commit HugeTLBFS memory + - [backport] 8220228: Improve Shenandoah pacing histogram message + - [backport] 8220350: Refactor ShenandoahHeap::initialize + - [backport] 8220712: [TESTBUG] gc/shenandoah/compiler/TestMaybeNullUnsafeAccess should run with Shenandoah enabled + - [backport] 8222130: Shenandoah should verify roots after pre-evacuation + - [backport] 8222185: Shenandoah should report "committed" as capacity + - [backport] 8222186: Shenandoah should not uncommit below minimum heap size + - [backport] 8222838: Shenandoah: SEGV on accessing cset bitmap for NULL ptr + - [backport] 8222843: Print Shenandoah cset map addresses in hs_err + - [backport] Added a few missed worker sessions for worker tasks + - [backport] Add JFR parallel and concurrent events (infrastructure) + - [backport] Adjust metaspace size during each GC + - [backport] A few more missing object equals barriers + - [backport] Always copy forward for disjoint arrays (test) + - [backport] Assert that Shenandoah does not trip JDK-8211926 + - [backport] Avoid false sharing by padding the ShenandoahEvacOOMHandler field in ShenandoahHeap + - [backport] Avoid write barrier during full GC + - [backport] Beef up and parallelize EvilSyncBug test + - [backport] c2 verification pass fixes for CAS + - [backport] Cherry-pick bulk MarkBitMap clearing methods + - [backport] Cherry-pick JDK-8212673, fix for Node::eqv_uncast + - [backport] Cleanup .ad files includes + - [backport] Clean up and regroup Shenandoah flags + - [backport] Cleanup buffered queue handling + - [backport] Cleanup C2 debugging leftovers + - [backport] Clean up dead code + - [backport] Clean up declarations and uses of marked_object_iterate + - [backport] Cleanup header files and forward declarations + - [backport] Clean up Shenandoah configurations in shared tests + - [backport] Clean up ShHeap::heap_region_iterate uses + - [backport] Cleanup unused bitmap methods + - [backport] Cleanup up superfluous newlines + - [backport] Coarsen Full GC use of heap lock + - [backport] Code root iterators should not be instantiated in worker threads + - [backport] Common liveness cache in ShHeap + - [backport] Compact heuristics adjustments + - [backport] Concurrent cycle by default on any external GC request + - [backport] Disable heap iteration for Shenandoah in SA + - [backport] Disable ShHeapUncommit on too-large large-pages + - [backport] Drop Shenandoah from test names + - [backport] Eliminating Shenandoah exposure to CLD + - [backport] Enable NUMA by default + - [backport] Enable string deduplication in all marking phases + - [backport] Factor out implicit/explicit GC requests + - [backport] Fail early when critical barriers are disabled + - [backport] Filter out TestPromotionToSurvivor.java test for Shenandoah + - [backport] Filter upstream tests for Shenandoah (part 1: tier1_gc) + - [backport] Fix build failures when Shenandoah is disabled, after #include reshuffles + - [backport] Fix call to is_g1_marking_load() with is_shenandoah_state_load() in ShenandoahSupport + - [backport] Fix compilation errors due to missing spaces between string literal and macro + - [backport] Fixed ShenandoahStrDedupStress test that causes negative index OOB exception + - [backport] Fix inconsistent "process weakrefs" logging + - [backport] Fix indentation of CriticalNative* tests + - [backport] Fix indenting in ShMarkCompact::do_it + - [backport] Fix up superfluous changes against upstream + - [backport] Fix various formattings and namings in shared GC code + - [backport] Fix Windows build failure + - [backport] Force termination logic is inverted + - [backport] Handle metadata induced GC + - [backport] Handle ShHeap::time_since_last_millis for RMI users + - [backport] Handle update_refs, class_unload, ref_proc in ShConcMark better + - [backport] Homogenize unimplemented stubs handling + - [backport] Improve liveness count during marking + - [backport] Initial committed regions count can be more than max + - [backport] Inline/rename confusingly named methods in ShConcurrentMark + - [backport] Inline ShHeap::do_marked_object_complete + - [backport] Inline ShHeap::monitoring_support into header + - [backport] Inline ShHeap::prepare_concurrent_evacuation + - [backport] Inline trivial ShHeap methods right in header + - [backport] In update-refs, update all code-roots when in degen-gc + - [backport] JVMTI lacks a few GC barriers/hooks + - [backport] Make heuristics tell if we can process references or unload classes + - [backport] Make ResourceMark use consistent in ShenandoahCodeRoots + - [backport] Make Shenandoah to use ShenandoahOWST only + - [backport] Make sure bitmap is marked incomplete before bitmap resets + - [backport] Make sure debug builds fail predictably on safepoint timeout + - [backport] Micro-optimize ShHeap::get_region by moving the most likely branch first + - [backport] Minor cleanup of Shenandoah SA + - [backport] Missed VerifyObjectEquals in VerifyJCStressTest + - [backport] More AArch64 assembler cleanups + - [backport] Move HdrSeq and BinaryMagnitudeSeq into Shenandoah utilities + - [backport] Move ShenandoahAllocType and ShenandoahAllocRequest to separate file + - [backport] Move ShenandoahGCTracer to gc/shenandoah + - [backport] Move Shenandoah tests to proper locations + - [backport] Need to step over GC barriers in Node::eqv_uncast() + - [backport] Parallel heap region iteration + - [backport] Parallelise "Clear Liveness" + - [backport] Parallelise "Complete Liveness" + - [backport] Partial infrastructure for suspendible workers + - [backport] Precleaning should use GC workers to do actual work + - [backport] Pre-evac JVMTI roots + fixes + - [backport] Prefix Shenandoah tests with "Test" + - [backport] Prepare tests for making UseShenandoahGC experimental + - [backport] Print number of threads in Shenandoah SA heap summary + - [backport] Print "process weakrefs" to disambiguate vs CM-with-UR + - [backport] Protect more internal code from false sharing + - [backport] Protect risky conversion in ShenandoahHeap::millis_since_last_gc + - [backport] Purge some G1-related cruft in C2 + - [backport] Purge unnecessary time conversion in ShenandoahPhaseTimings::record_phase_time + - [backport] Readjust ShenandoahStrDedupStress test to avoid timeout + - [backport] Record location when asserting the code root correctness + - [backport] Refactor bitmap cleaning + - [backport] Reformat Shenandoah tests + - [backport] Rehash and cleanup usages of ShenandoahHeap::heap() + - [backport] Re-label Shenandoah GC causes (SA&GC) + - [backport] Remove dead-weight ShenandoahPrinter + - [backport] Remove fix-roots pass in ShHeap + - [backport] Remove obsolete and ignored TestHeapAlloc + - [backport] Remove obsolete code snippet related to barriers on constants + - [backport] Remove obsolete unused flags + - [backport] Remove old code from escape analysis + - [backport] Remove Parallel Cleanup counters + - [backport] Remove ShenandoahCompileCheck + - [backport] Remove ShenandoahWriteBarrierCsetTestInIR flag + - [backport] Remove ShenandoahWriteBarrierRB flag + - [backport] Remove ShHeap::_heap_expansion_count + - [backport] Remove ShHeap::region_in_collection_set in favor of SHR::in_cset + - [backport] Remove ShWB from formssel.cpp + - [backport] Remove unused SA ShenandoahHeapRegionSet.java + - [backport] Remove unused ShenandoahEvacuateRootsClosure + - [backport] Remove useless change in loopnode.cpp + - [backport] Remove useless ShHeap::heap_region_iterate + - [backport] Rename BrooksPointer to ShenandoahBrooksPointer + - [backport] Rename concurrentMark -> concurrent_mark + - [backport] Rename fields in (SA) ShenandoahHeap.java to omit 'Regions' and 'Field' suffix + - [backport] Rename ShHeap::shenandoahPolicy -> ShHeap::shenandoah_policy + - [backport] Rename UINT64_FORMAT_HEX_W to UINT64_FORMAT_X_W + - [backport] Rename VerifyObjectEquals to ShenandoahVerifyObjectEquals + - [backport] Rename vm_operations_shenandoah.* to shenandoahVMOperations.* + - [backport] Renaming ShenandoahParallelEvacuationTask to ShenandoahConcurrentEvacuationTask + - [backport] Separate "passive" heuristics from "adaptive" + - [backport] Several AArch64 cleanups + - [backport] ShenandoahMemoryPool should support usage threshold + - [backport] Shenandoah should @require Shenandoah, @key gc, and have good @test + - [backport] Shenandoah test groups should not include each other + - [backport] Silence VSC++ about multiple assignment operators + - [backport] Simplify Shenandoah task termination in aborted paths + - [backport] Single marking bitmap + - [backport] Skip pre-evac verification and pacing on shortcut cycle path + - [backport] Some Shenandoah related additions to SA + - [backport] Sort ShenandoahConcurrentMark methods/fields into logical groups + - [backport] Sort ShenandoahHeap methods/fields into logical groups + - [backport] StringDedupMode enum for closures/method templates + - [backport] Support VerifyBeforeGC and VerifyAfterGC VM options + - [backport] Suppressing VSC++ warning locally + - [backport] Trim down oop-equals verification + - [backport] Trim unused code from Shenandoah SA + - [backport] Turn TestReferenceCAS into a standalone/no-testng test + - [backport] Update copyrights + - [backport] Use ShenandoahAllocationThreshold in ShenandoahStaticHeuristics constructor + - [backport] Use s-macro to keep GC phase enum and names in sync + - Enable heap inspection for Shenandoah + - Excess barriers before JNI accesses, already covered by "Move barriers into typeArrayOop.hpp direct memory accessors" + - Fix build failure due to unknown INCLUDE_SHENANDOAHGC + - Fix dangling write-barrier in acmp + - Fix force termination detection by spin master + - Fix minimal VM build + - Fix non-PCH builds + - Fix shutdown deadlock due to blocking SATB flush periodic task + - JDK8u-only: Use WB-based acmp barrier + - Prettify Shenandoah JDK 8 logging + - ShenandoahSATBBufferSize cannot be size_t in 8u + New in release 3.12.0 (2019-05-01): * Security fixes @@ -425,7 +600,7 @@ * SystemTap - PR3625: arc_priority representation creates an implicit limit on character sequence within regexp * Shenandoah - - PR3634: Shenandoah still broken on s390 with aarch64-shenandoah-jdk8u181-b16 + - PR3634: Shenandoah still broken on s390 with aarch64-shenandoah-jdk8u181-b16 (Cast Shenandoah{Min,Max}RegionSize to size_t) - [backport] Adaptive CSet selection overshoots max-CSet - [backport] Adaptive CSet selection selects excessively when memory is tight - [backport] Adaptive/Traversal heuristics rewrite for allocation rate
--- a/hotspot.map.in Thu May 09 22:19:46 2019 +0100 +++ b/hotspot.map.in Fri May 24 16:16:05 2019 +0100 @@ -1,4 +1,4 @@ # version type(drop/hg) url changeset sha256sum default drop https://icedtea.classpath.org/download/drops/icedtea8/@ICEDTEA_RELEASE@ 3f9a60eb8ef0 073ebc2f2e0301e0f2c17bb0e9d7340a0ed1f003c9706109f25ecefeeedc67f6 -shenandoah drop https://icedtea.classpath.org/download/drops/icedtea8/@ICEDTEA_RELEASE@ adb62c0031b8 1226cf506725df9d98188b6918a0329764a64955d6b8ba784eaf2a70c0d40830 +shenandoah drop https://icedtea.classpath.org/download/drops/icedtea8/@ICEDTEA_RELEASE@ 94a8fbf1b6a3 4e24f80245735194a6ab12a7d13457356d1b96a18a35fc12ddf3b7f12aa12292 aarch32 drop https://icedtea.classpath.org/download/drops/icedtea8/@ICEDTEA_RELEASE@ 57f4048a925b 921202baed30726dc833c94817e07a4baa7d3b1e9129af032b09bd7f0e3bcfd1
--- a/patches/hotspot/shenandoah/8222286-pr3727-s390-shenandoah.patch Thu May 09 22:19:46 2019 +0100 +++ b/patches/hotspot/shenandoah/8222286-pr3727-s390-shenandoah.patch Fri May 24 16:16:05 2019 +0100 @@ -2,15 +2,15 @@ # the BinaryMagnitudeSeq::add method in # [backport] Allocation latency tracing -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 @@ +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_intptr((uintptr_t) val) + 1; ++ int mag = log2_long(val) + 1; // Defensively saturate for product bits: if (mag < 0) {
--- a/patches/hotspot/shenandoah/pr3634.patch Thu May 09 22:19:46 2019 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,16 +0,0 @@ -# PR3634: Shenandoah still broken on s390 with aarch64-shenandoah-jdk8u181-b16 - -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<size_t>(ShenandoahMinRegionSize, region_size); -+ region_size = MIN2<size_t>(ShenandoahMaxRegionSize, region_size); - - } else { - if (ShenandoahHeapRegionSize > initial_heap_size / MIN_NUM_REGIONS) {