6038 Commits

Author SHA1 Message Date
Mikael Gerdin
cf47fb3a23 8135012: Don't use G1RootProcessor when scanning remembered sets
Reviewed-by: jmasa, ecaspole
2015-09-04 09:47:35 +02:00
Thomas Schatzl
83e4800c47 8134857: Inconsistency in maximum TLAB/PLAB size and humongous object size
Align TLAB/PLAB size with exact humongous object size threshold, not that value -1.

Reviewed-by: jmasa, dfazunen
2015-09-04 08:36:13 +02:00
Daniel D. Daugherty
9b12926ed8 8049304: race between VM_Exit and _sync_FutileWakeups->inc()
Add PerfDataManager.has_PerfData() to indicate when PerfData objects should be safe to query. Update Java monitor PerfData usage to check the new flag. PerfDataManager::destroy() should only be called at a safepoint and when the StatSampler is not active.

Reviewed-by: kbarrett, dholmes, tbenson, bdelsart
2015-09-03 10:22:39 -07:00
Sangheon Kim
c091c7348a 8134972: [BACKOUT] GC: implement ranges (optionally constraints) for those flags that have them missing
Reviewed-by: jwilhelm
2015-09-02 17:49:46 -07:00
Kim Barrett
8ebc8387ba 8134806: Clean up write_ref_field_work
Remove unnecessary pure virtual decl and default argument values.

Reviewed-by: jwilhelm, tbenson, jmasa
2015-09-02 11:41:42 -04:00
Thomas Schatzl
f55b656f2d Merge 2015-09-02 16:16:58 +02:00
Thomas Schatzl
d0bb38889d 8134856: Incorrect use of PLAB::min_size() in MaxPLABSizeBounds
Reviewed-by: jwilhelm, tbenson
2015-09-02 14:00:46 +02:00
Y. Srinivas Ramakrishna
62ccb0305a 8133818: Additional number of processed references printed with -XX:+PrintReferenceGC after JDK-8047125
Test contributed by brutisso

Reviewed-by: tonyp, tschatzl
2015-09-02 11:56:10 +02:00
Thomas Schatzl
fbfed13ec2 8134858: Remove G1 specific checking of Young/OldPLABSize in G1CollectorPolicy constructor
Remove obsolete and wrong code.

Reviewed-by: mgerdin, brutisso
2015-09-02 09:57:03 +02:00
Staffan Friberg
96823ab211 8066443: Add G1 support for promotion event
Reviewed-by: tschatzl
2015-09-02 09:51:05 +02:00
Stefan Johansson
dada9bc32c 8129417: Oop iteration clean-up to remove oop_ms_follow_contents
Reviewed-by: pliden, ehelin
2015-09-02 09:14:04 +02:00
Per Lidén
fd814172ac Merge 2015-09-01 14:17:53 +02:00
Per Lidén
ee626f77ab 8134738: Remove CollectorPolicy::Name
Reviewed-by: brutisso, mgerdin
2015-09-01 13:13:19 +02:00
Thomas Schatzl
8f2026345c 8067341: Modify PLAB sizing algorithm to waste less
Change the G1 PLAB resizing algorithm to waste less memory by being more conservative about the PLAB sizes.

Reviewed-by: ecaspole, jmasa
2015-09-01 10:53:29 +02:00
Sangheon Kim
cf5132e887 8078555: GC: implement ranges (optionally constraints) for those flags that have them missing
Add ranges and constraint functions for GC flags.

Reviewed-by: jmasa, kbarrett, gziemski, ddmitriev, drwhite
2015-08-31 11:51:29 -07:00
Dmitry Samersoff
21b8f01e4e Merge 2015-08-31 23:29:02 +02:00
Dmitry Samersoff
6ed285af0a Merge 2015-08-31 21:46:33 +03:00
Kim Barrett
15196341a5 8131330: G1CollectedHeap::verify_dirty_young_list fails with assert
Use assembly loop to avoid compiler optimization into memset

Reviewed-by: ecaspole, tschatzl
2015-08-31 13:06:01 -04:00
Roland Westrelin
ed9e8b9ff2 8134031: Incorrect JIT compilation of complex code with inlining and escape analysis
Bad rewiring of memory edges when we split unique types during EA

Reviewed-by: kvn
2015-08-31 17:20:08 +02:00
Roland Westrelin
b641aad954 Merge 2015-09-02 22:05:47 +02:00
Vladimir Kozlov
16a8ed6f5c 8134898: Small fixes found during JVMCI work
Removed jre/ from jdk paths in makefiles. Add Thread::_unhandled_oops field for debug and fastdebug builds. Fix doc.

Reviewed-by: coleenp, bdelsart
2015-09-02 11:03:20 -07:00
Roland Westrelin
7ef7c96fde 8134468: Lucene test failures with 32 bit JDK 9b78, Server compiler
Test that checks whether an array load falls into the range of an arraycopy is incorrect on 32bits

Reviewed-by: iveresov, kvn
2015-09-02 10:00:27 +02:00
Aleksey Shipilev
7c7692856a 8134758: Final String field values should be trusted as stable
Reviewed-by: kvn, thartmann
2015-09-01 19:48:10 +03:00
Kim Barrett
673798137b Merge 2015-08-28 23:57:26 +02:00
Dmitry Dmitriev
237449b3bd 8132725: Memory leak in Arguments::add_property function
Logic in add_property was rewritten to avoid memory leak

Reviewed-by: iklam, coleenp
2015-08-28 17:32:31 +03:00
Erik Helin
6239649ec3 8134509: G1ParCopyClosure does not need a ReferenceProcessor
Reviewed-by: stefank, mgerdin
2015-08-28 09:05:46 +02:00
Roland Westrelin
d791abc7e3 Merge 2015-08-27 18:51:22 +02:00
Erik Helin
ec7659c972 8134504: Remove usage of EvacuationInfo from G1CollectorPolicy
Reviewed-by: mgerdin, jwilhelm
2015-08-27 16:28:05 +02:00
Aleksey Shipilev
e3007b79ad 8076758: new StringBuilder().append(String).toString() should be recognized by OptimizeStringConcat
Reviewed-by: kvn, thartmann
2015-09-01 12:57:41 +03:00
Tobias Hartmann
7b6480cfa4 8134493: Cleaning inline caches of unloaded nmethods should be done in sweeper
Clean ICs of unloaded nmethods in sweeper to avoid impact on safepoint duration.

Reviewed-by: kvn, mdoerr
2015-08-31 13:49:18 +02:00
Roland Westrelin
9dcbe322e0 8134288: compiler/runtime/6859338/Test6859338.java crashes in PhaseIdealLoop::try_move_store_after_loop
Store nodes may not have a control if used to update profiling

Reviewed-by: kvn
2015-08-26 12:43:15 +02:00
Roland Westrelin
8942ef410f 8134321: tools/pack200/Pack200Test.java crashes in the VM PIT jdk9 b79
Code that capture field values of eliminated allocation at a safepoint when there's an arraycopy behind a Phi is broken

Reviewed-by: kvn
2015-08-26 09:49:37 +02:00
Jiangli Zhou
9ee2b211f9 8131734: assert(!is_null(v)) failed: narrow klass value can never be zero with -Xshared:auto
Handle shared string mapping failures.

Co-authored-by: Tom Benson <tom.benson@oracle.com>
Reviewed-by: tschatzl, kbarrett, ddmitriev, hseigel
2015-08-25 17:22:56 -04:00
Tobias Hartmann
72e8f28d56 8075805: Crash while trying to release CompiledICHolder
Removed nmethod transition to zombie outside of sweeper. Added cleaning of ICs of unloaded nmethods.

Reviewed-by: kvn, iveresov
2015-08-25 07:49:55 +02:00
Thomas Schatzl
494872e535 8133456: HeapRegionManager::shrink_by() iterates suboptimally across regions
Reviewed-by: brutisso, tbenson
2015-08-24 16:32:50 +02:00
Thomas Schatzl
472a3333a8 8067336: Allow that PLAB allocations at the end of regions are flexible
PLAB allocations may return a buffer that is between minimum size (current allocation) and the desired size. This allows removes a large amount of fragmentation at the end of regions.

Reviewed-by: tbenson, mgerdin
2015-08-24 16:27:41 +02:00
David Holmes
dd71c38c37 Merge 2015-08-25 00:26:10 -04:00
Roland Westrelin
a9e232a8ef Merge 2015-08-21 09:12:42 +02:00
Coleen Phillimore
96644d2fb6 Merge 2015-08-20 17:39:43 +02:00
Coleen Phillimore
8831b43d28 Merge 2015-08-20 17:36:00 +02:00
Coleen Phillimore
6cb369c903 8133951: Zero interpreter asserts in stubRoutines.cpp
Allow zero sized code buffer when checking if there's enough remaining size

Reviewed-by: kvn
2015-08-20 11:18:51 -04:00
Thomas Schatzl
c91c77abd2 8067339: PLAB reallocation might result in failure to allocate object in that recently allocated PLAB
Properly size the PLAB to make sure that the object to allocate always has enough space in it.

Reviewed-by: mgerdin, brutisso
2015-08-20 15:17:43 +02:00
Thomas Schatzl
041c76d48b 8073146: G1 merges thread local age tables too early with global age table
Move merging of age and survivor table to the end of GC.

Reviewed-by: mgerdin, david
2015-08-20 15:17:43 +02:00
Thomas Schatzl
6cca258181 8040162: Avoid reallocating PLABs between GC phases in G1
Allocate G1ParScanThreadState at the start of GC and only deallocate at the end of GC. This automatically keeps the current PLAB intact without flushing it (and loosing lots of memory) for every reallocation.

Reviewed-by: david, mgerdin
2015-08-20 15:17:43 +02:00
Thomas Schatzl
4a849fb21c 8133530: Add JFR event for evacuation statistics
Introduce two new JFR events for young/old generation allocation statistics based on previous changes.

Reviewed-by: ehelin, mgerdin
2015-08-20 15:17:41 +02:00
Roland Westrelin
33b2496286 Merge 2015-08-20 09:31:28 +02:00
Thomas Schatzl
0ade675b8b 8073013: Add detailed information about PLAB memory usage
Track and provide information about direct allocation, region end waste and failure waste for G1.

Reviewed-by: jmasa, david, ehelin, mgerdin
2015-08-19 13:59:39 +02:00
Thomas Schatzl
43a6ce61de 8133470: Uses of Atomic methods in plab.hpp should be moved to .inline.hpp file
Fix include file dependencies according to general guidelines for plab.hpp

Reviewed-by: ehelin, mgerdin
2015-08-19 13:50:50 +02:00
Thomas Schatzl
8c2da662ff 8003237: G1: Reduce unnecessary (and failing) allocation attempts when handling an evacuation failure
Remember for every generation whether the memory for that generation has already been exhausted. If so, do not try to get a new region for these generations. Further, if the last generation is full, early exit from copy_to_survivor_space.

Reviewed-by: jmasa, brutisso
2015-08-19 13:47:40 +02:00
Erik Helin
9bc2e29405 8133825: Remove the class G1CollectorPolicyExt
Reviewed-by: jwilhelm, ecaspole
2015-08-20 10:27:04 +02:00