695 Commits

Author SHA1 Message Date
Tao Mao
1e80919f4c 8007762: Rename a bunch of methods in size policy across collectors
Rename: compute_generations_free_space() = compute_eden_space_size() + compute_old_gen_free_space(); update related logging messages

Reviewed-by: jmasa, johnc, tschatzl, brutisso
2013-05-22 11:11:47 -07:00
Bengt Rutisson
0be2f273c7 8014971: Minor code cleanup of the freelist management
Reviewed-by: jwilhelm, jmasa, tschatzl
2013-05-22 08:04:58 +02:00
Thomas Schatzl
b33547e347 8014405: G1: PerRegionTable::fl_mem_size() calculates size of the free list using wrong element sizes
Instead of using a simple sizeof(), ask the PerRegionTable class about its size when iterating over the free list.

Reviewed-by: jwilhelm, brutisso
2013-05-21 11:30:14 +02:00
Bengt Rutisson
8d3d35b861 7066063: CMS: "Conservation Principle" assert failed
Add call to coalBirth() in CompactibleFreeListSpace::reset()

Reviewed-by: ysr, jmasa
2013-05-21 08:50:20 +02:00
Tao Mao
47c64fb0c3 7186737: Unable to allocate bit maps or card tables for parallel gc for the requested heap
Print helpful error message when VM aborts due to inability of allocating bit maps or card tables

Reviewed-by: jmasa, stefank
2013-05-20 10:44:33 -07:00
Jesper Wilhelmsson
ed64a49836 Merge 2013-05-19 20:31:30 +02:00
Erik Helin
0f9e2457c5 8014277: Remove ObjectClosure as base class for BoolObjectClosure
Reviewed-by: brutisso, tschatzl
2013-05-17 11:57:05 +02:00
Jesper Wilhelmsson
262b1413c1 Merge 2013-05-17 06:01:10 +02:00
John Cuthbertson
5838d847a1 8010738: G1: Output for full GCs with +PrintGCDetails should contain perm gen size/meta data change info
Include metaspace information (used, allocated, reserved) in the PrintGCDetails output for full GCs.

Reviewed-by: poonam, jmasa, brutisso
2013-05-16 09:24:26 -07:00
Thomas Schatzl
5ebe77bb6b 8014240: G1: Add remembered set size information to output of G1PrintRegionLivenessInfo
Improve the output of G1PrintRegionLivenessInfo by adding a per-region remembered set size information column

Reviewed-by: jwilhelm, johnc
2013-05-16 13:02:33 +02:00
John Cuthbertson
d583cdc253 8014408: G1: crashes with assert assert(prev_committed_card_num == _committed_max_card_num) failed
Mismatch in the card number calculation between next and previous committed sizes of the card counts table.

Reviewed-by: jmasa, tschatzl
2013-05-15 22:35:36 -07:00
Tao Mao
87b3317478 8007763: Refactoring: split up compute_generation_free_space() into two functions for class PSAdaptiveSizePolicy
Split up compute_generation_free_space() into two functions: compute_eden_space_size() + compute_old_gen_free_space(), each of which (if needed) can be reused without executing an overhead of the other.

Reviewed-by: jmasa, tschatzl
2013-05-15 10:41:22 -07:00
Thomas Schatzl
8d53e75550 6843347: Boundary values in some public GC options cause crashes
Setting some public integer options to specific values causes crashes or undefined GC behavior. This patchset adds the necessary argument checking for these options.

Reviewed-by: jmasa, brutisso
2013-05-15 11:05:09 +02:00
Yumin Qi
98151c30c8 8012902: remove use of global operator new - take 2
The fix of 8010992, disable use of global operator new and new[] which caused failure on some tests. This takes two of the bugs also add ALLOW_OPERATOR_NEW_USAGE to prevent crash for third party code calling operator new of jvm on certain platforms.

Reviewed-by: coleenp, dholmes, zgu
2013-05-14 09:41:12 -07:00
Yumin Qi
9a1cd52a0f Merge 2013-05-13 18:08:13 +00:00
Bengt Rutisson
d3a0a48fbb 8014339: Improve assert and remove some dead code from parMarkBitMap.hpp/cpp
Reviewed-by: stefank, tschatzl
2013-05-13 14:09:05 +02:00
Yumin Qi
c6aa9c656f 8003557: NPG: Klass* const k should be const Klass* k
With NPG, const KlassOop klass which is in fact a definition converted to Klass* const, which is not the original intention. The right usage is converting them to const Klass*.

Reviewed-by: coleenp, kvn
2013-05-10 08:27:30 -07:00
John Cuthbertson
c38f8fc543 7176479: G1: JVM crashes on T5-8 system with 1.5 TB heap
Refactor G1's hot card cache and card counts table into their own files. Simplify the card counts table, including removing the encoding of the card index in each entry. The card counts table now has a 1:1 correspondence with the cards spanned by heap. Space for the card counts table is reserved from virtual memory (rather than C heap) during JVM startup and is committed/expanded when the heap is expanded. Changes were also reviewed-by Vitaly Davidovich.

Reviewed-by: tschatzl, jmasa
2013-05-09 11:16:39 -07:00
Jon Masamitsu
bbff951f67 8013184: CMS: Call reset_after_compaction() only if a compaction has been done
Reviewed-by: mgerdin, johnc, tschatzl
2013-05-08 17:12:52 -07:00
Jon Masamitsu
973d0400c4 8013032: CMS: assert(used() == used_after_gc && used_after_gc <= capacity()) failed: used: 0 used_after_gc: 292080 capacity: 1431699456
Reviewed-by: tschatzl, mgerdin, johnc
2013-05-08 16:28:03 -07:00
Bengt Rutisson
a8ad116e49 8013872: G1: HeapRegionSeq::shrink_by() has invalid assert
Refactored shrink_by() to only use region counts and not byte sizes

Reviewed-by: johnc, tschatzl
2013-05-06 21:30:34 +02:00
Jesper Wilhelmsson
0c4933f5b0 Merge 2013-05-06 13:03:46 +02:00
Bengt Rutisson
36c195270d 8013791: G1: G1CollectorPolicy::initialize_flags() may set min_alignment > max_alignment
Make sure max alignemnt is at least as large as min alignment

Reviewed-by: johnc, jmasa, tschatzl
2013-05-06 09:16:14 +02:00
Mikael Gerdin
67b238b12d Merge 2013-05-02 19:28:59 +02:00
Calvin Cheung
0f7adcc3d9 8011661: Insufficient memory message says "malloc" when sometimes it should say "mmap"
Reviewed-by: coleenp, zgu, hseigel
2013-04-30 11:56:52 -07:00
Stefan Karlsson
ad20a6bd76 8013160: NPG: Remove unnecessary mark stack draining after CodeCache::do_unloading
Reviewed-by: coleenp, mgerdin
2013-04-26 10:40:36 +02:00
Stefan Karlsson
f0ae855b07 8013132: Add a flag to turn off the output of the verbose verification code
Reviewed-by: johnc, brutisso
2013-04-24 20:13:37 +02:00
Daniel D. Daugherty
2cb874268e Merge 2013-04-21 21:05:02 -07:00
Daniel D. Daugherty
138bab2963 8012907: anti-delta fix for 8010992
Anti-delta fix for 8010992 until 8012902 can be fixed

Reviewed-by: acorn, minqi, rdurbin
2013-04-21 20:41:04 -07:00
Daniel D. Daugherty
46b3969016 Merge 2013-04-19 16:51:27 -07:00
Yumin Qi
735ab2cd1c 8010992: Remove calls to global ::operator new[] and new
Disable use of global operator new and new[] which could cause unexpected exception and escape from NMT tracking.

Reviewed-by: coleenp, dholmes, zgu
2013-04-19 11:08:52 -07:00
Bharadwaj Yadavalli
824a51963f Merge 2013-04-18 16:04:33 -07:00
Mikael Gerdin
0393fa9b49 Merge 2013-04-11 16:35:34 +02:00
David Chase
55c4ce1ca1 7104565: trim jprt build targets
Remove JPRT debug builds, remove -DDEBUG -DFASTDEBUG and use ASSERT instead in sources

Reviewed-by: dholmes, kvn, coleenp
2013-04-12 15:53:30 -07:00
Stefan Karlsson
e96efdaa1a 8011872: Include Bit Map addresses in the hs_err files
Reviewed-by: brutisso, jmasa
2013-04-10 14:26:49 +02:00
Daniel D. Daugherty
78339229bb Merge 2013-04-05 10:38:08 -07:00
Mikael Vidstedt
eeb83733a6 8003310: Enable -Wunused-function when compiling with gcc
Add the -Wunused-function flag and remove a number of unused functions.

Reviewed-by: dholmes, coleenp, kvn
2013-04-04 10:01:26 -07:00
Thomas Schatzl
45cc7f61db 8005857: assert in GC_locker from PSOldGen::expand with -XX:+PrintGCDetails and Verbose
Use GC_locker::is_active_and_needs_gc() instead of GC_locker::is_active() for providing information about the reason of heap expansion.

Reviewed-by: jmasa, johnc
2013-04-02 10:03:02 +02:00
Mikael Gerdin
bd3eb2abf6 Merge 2013-04-16 12:46:24 +02:00
John Cuthbertson
9fba6da283 Merge 2013-04-11 10:20:00 -07:00
John Cuthbertson
fa3b993423 8010780: G1: Eden occupancy/capacity output wrong after a full GC
Move the calculation and recording of eden capacity to the start of a GC and print a detailed heap transition for full GCs.

Reviewed-by: tschatzl, jmasa
2013-04-10 10:57:34 -07:00
John Cuthbertson
9c89e6d28a 8010463: G1: Crashes with -UseTLAB and heap verification
Some parts of the G1 heap can only be walked during a safepoint. Skip verifying these parts of the heap when verifying during JVM startup.

Reviewed-by: brutisso, tschatzl
2013-03-29 13:49:37 -07:00
Mikael Gerdin
89120e7827 7014552: gc/lock/jni/jnilockXXX works too slow on 1-processor machine
Keep a counter of how many times we were stalled by the GC locker, add a diagnostic flag which sets the limit.

Reviewed-by: brutisso, ehelin, johnc
2013-03-28 10:27:28 +01:00
John Cuthbertson
a8087d1cb6 8008301: G1: guarantee(satb_mq_set.completed_buffers_num() == 0) failure
If the marking stack overflows while the marking tasks are draining the SATB buffers, remark will exit with some SATB buffers left unprocessed. Relax the guarantee to allow for overflow.

Reviewed-by: jmasa, brutisso
2013-03-19 09:38:37 -07:00
John Cuthbertson
9164834d73 8009940: G1: assert(_finger == _heap_end) failed, concurrentMark.cpp:809
Skip reference processing if the global marking stack overflows during remark. Refactor and rename set_phase(); move code that sets the concurrency level into its own routine. Do not call set_phase() from within parallel reference processing; use the concurrency level routine instead. The marking state should only set reset by CMTask[0] during the concurrent phase of the marking cycle; if an overflow occurs at any stage during the remark, the marking state will be reset after reference processing.

Reviewed-by: brutisso, jmasa
2013-03-19 00:57:39 -07:00
John Cuthbertson
d41c0fce7f 8009536: G1: Apache Lucene hang during reference processing
In CMTask::do_marking_step(), Skip offering termination and entering the first and second synchronization barriers if called from a serial context, i.e. the VM thread.

Reviewed-by: brutisso, tschatzl
2013-03-18 11:05:27 -07:00
Stefan Karlsson
d4f955a545 Merge 2013-03-18 09:34:58 +01:00
Stefan Karlsson
35177d7db2 Merge 2013-03-15 08:57:55 +01:00
Thomas Schatzl
e1df78e390 6733980: par compact - TraceGen1Time always shows 0.0000 seconds
Use the correct collector to retrieve accumulated gen1 trace time

Reviewed-by: johnc, jmasa
2013-03-14 09:37:38 +01:00
Mikael Gerdin
a4a4c34e96 8005602: NPG: classunloading does not happen while CMS GC with -XX:+CMSClassUnloadingEnabled is used
Call purge() on CLDG after sweep(), reorder purge() call in GenCollectedHeap

Reviewed-by: jmasa, stefank
2013-03-14 10:54:44 +01:00