RFR (14*XXS): Backports of multiple changes to 8u40
Thomas Schatzl
thomas.schatzl at oracle.com
Wed Jul 16 14:15:40 UTC 2014
Hi all,
I would like to backport the following 14 changes to 8u40 as now the
8u repo is open again. Unfortunately the changes did not apply cleanly,
although these differences were mostly line number related.
There are three issues with merge errors: two because of the addition of
the p2i() macro, and one because of some makefile changes not
backported.
Testing:
jprt; all the changes have been in the 9 repo for > 2 weeks now causing
no issues.
Here we go:
8027553: Use the "next" field to iterate over fine remembered instead of
using the hash table
New Webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8027553/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8027553/webrev.1/
Diff of diffs:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8027553/ports.diff
CR:
https://bugs.openjdk.java.net/browse/JDK-8027553
Conflict in:
+---old/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp
2014-07-16 15:28:30.689433970 +0200
++++ new/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp 2014-07-16 15:28:30.596432890 +0200
+@@ -178,12 +178,7 @@
// collection set or not. Assume that the reference
// points into the heap.
inline bool G1CollectedHeap::in_cset_fast_test(oop obj) {
- assert(_in_cset_fast_test != NULL, "sanity");
-- assert(_g1_committed.contains((HeapWord*) obj), err_msg("Given reference outside of heap, is "PTR_FORMAT, (HeapWord*)obj));
+- assert(_g1_committed.contains((HeapWord*) obj), err_msg("Given reference outside of heap, is "PTR_FORMAT, p2i((HeapWord*)obj)));
- // no need to subtract the bottom of the heap from obj,
- // _in_cset_fast_test is biased
- uintx index = cast_from_oop<uintx>(obj) >> HeapRegion::LogOfHRGrainBytes;
I.e. the patch that adds p2i() has already been backported so it causes a merge error.
8037344: Use the "next" field to iterate over fine remembered instead of using the hash table
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8037344/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8037344/webrev.3/
CR:
https://bugs.openjdk.java.net/browse/JDK-8037344
Problems: line number changes
8039596: Remove HeapRegionRemSet::clear_incoming_entry
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8039596/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8039596/webrev/
CR:
https://bugs.openjdk.java.net/browse/JDK-8039596
Problems: line number changes
8028710: G1 does not retire allocation buffers after reference processing work
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8028710/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8028710/webrev/
CR:
https://bugs.openjdk.java.net/browse/JDK-8028710
Problems: line number changes
8019342: G1: High "Other" time most likely due to card redirtying
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8019342/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8019342/webrev.1/
CR:
8019342: G1: High "Other" time most likely due to card redirtying
Problems: line number changes
8040002: Clean up code and code duplication in re-diryting cards for verification
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8040002/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8040002/webrev.1/
CR:
https://bugs.openjdk.java.net/browse/JDK-8040002
Problems: line number changes
8040792: G1: Memory usage calculation uses sizeof(this) instead of sizeof(classname)
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8040792/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8040792/webrev.1/
CR:
https://bugs.openjdk.java.net/browse/JDK-8040792
Problems: line number changes
8026784: Error message in AdaptiveFreeList<Chunk>::verify_stats is wrong
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8026784/webrev/
Original webrev:
http://cr.openjdk.java.net/~ehelin/andreas/8026784/webrev.00/
CR:
https://bugs.openjdk.java.net/browse/JDK-8026784
(note: contributed by A. Sjöberg).
Problems:
The patch that adds p2i() has already been backported so it causes a merge error.
8043723: max_heap_for_compressed_oops() declared with size_t, but defined with uintx
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8043723/webrev/
Original webrev:
?
CR:
https://bugs.openjdk.java.net/browse/JDK-8043723
(note: contributed by D. Horak from RedHat)
Problems: line number changes
8043722: Swapped usage of idx_t and bm_word_t types in parMarkBitMap.cpp
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8043722/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8043722/webrev/
CR:
https://bugs.openjdk.java.net/browse/JDK-8043722
(note: contributed by D. Horak from RedHat)
Problems: line number changes
8026847: [TESTBUG] gc/g1/TestSummarizeRSetStats* tests launch 32bit jvm with UseCompressedOops
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8026847/webrev/
Original webrev:
http://cr.openjdk.java.net/~fzhinkin/azakharov/8026847/webrev.00/
CR:
https://bugs.openjdk.java.net/browse/JDK-8026847
(note: contributed by A. Zakharov)
Problems: applies cleanly
8035400: Move G1ParScanThreadState into its own files
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8035400/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8035400/webrev.2/
CR:
https://bugs.openjdk.java.net/browse/JDK-8035400
Problems: changed line numbers
Had to add the new file to make/excludeSrc.make as the change that does this exclusion in a generic way has not been backported.
--- old/make/excludeSrc.make 2014-07-16 15:29:28.543115177 +0200
+++ new/make/excludeSrc.make 2014-07-16 15:29:28.354112868 +0200
@@ -90,6 +90,7 @@
g1RemSet.cpp g1RemSetSummary.cpp g1SATBCardTableModRefBS.cpp g1StringDedup.cpp g1StringDedupStat.cpp \
g1StringDedupTable.cpp g1StringDedupThread.cpp g1StringDedupQueue.cpp g1_globals.cpp heapRegion.cpp \
g1BiasedArray.cpp heapRegionRemSet.cpp heapRegionSeq.cpp heapRegionSet.cpp heapRegionSets.cpp \
+ g1ParScanThreadState.cpp \
ptrQueue.cpp satbQueue.cpp sparsePRT.cpp survRateGroup.cpp vm_operations_g1.cpp g1CodeCacheRemSet.cpp \
adjoiningGenerations.cpp adjoiningVirtualSpaces.cpp asPSOldGen.cpp asPSYoungGen.cpp \
cardTableExtension.cpp gcTaskManager.cpp gcTaskThread.cpp objectStartArray.cpp \
Merge problem in g1CollectedHeap.cpp due to changed include files:
the hunk at
@@ -63,11 +64,9 @@
#include "oops/oop.inline.hpp"
#include "oops/oop.pcgc.inline.hpp"
#include "runtime/atomic.inline.hpp"
-#include "runtime/prefetch.inline.hpp"
#include "runtime/orderAccess.inline.hpp"
#include "runtime/vmThread.hpp"
#include "utilities/globalDefinitions.hpp"
-#include "utilities/ticks.hpp"
must be replaced by
@@ -58,14 +59,12 @@
#include "memory/generationSpec.hpp"
#include "memory/iterator.hpp"
#include "memory/referenceProcessor.hpp"
#include "oops/oop.inline.hpp"
#include "oops/oop.pcgc.inline.hpp"
-#include "runtime/prefetch.inline.hpp"
#include "runtime/orderAccess.inline.hpp"
#include "runtime/vmThread.hpp"
-#include "utilities/ticks.hpp"
8035401: Fix visibility of G1ParScanThreadState members
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8035401/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8035401/webrev.2/
CR:
https://bugs.openjdk.java.net/browse/JDK-8035401
Problems: line numbers changed
8040977: G1 crashes when run with -XX:-G1DeferredRSUpdate
New webrev:
http://cr.openjdk.java.net/~tschatzl/8u40-first-merges/webrev.8040977/webrev/
Original webrev:
http://cr.openjdk.java.net/~tschatzl/8040977/webrev.1/
CR:
https://bugs.openjdk.java.net/browse/JDK-8040977
Problems: line numbers changed
Thanks for your patience,
Thomas
More information about the hotspot-gc-dev
mailing list