John Coomes
401e04572a
6765804: GC "dead ratios" should be unsigned
...
Reviewed-by: ysr, tonyp
2008-10-29 06:30:02 -07:00
Erik Trimble
4b983d3b39
Merge
2008-10-15 18:51:04 -07:00
Igor Veresov
bc9f364917
6758633: G1: SEGV with GCOld on Linux
...
Avoid growth of a GrowableArray backend of HeapRegionSeq.
Reviewed-by: tonyp, jcoomes
2008-10-13 21:41:42 -07:00
Erik Trimble
50964694fe
Merge
2008-10-07 11:01:35 -07:00
Igor Veresov
d80199b403
6753547: NUMA allocator: Invalid chunk size computation during adaptive resizing
...
The per-lgrp chuck size can be incorrectly computed (causing an assertion failure) because of the non-associativity of the floating point operations. The fix is to rearrange the operations.
Reviewed-by: ysr
2008-10-06 20:59:16 -07:00
Antonios Printezis
6f5e28aca1
6752248: G1: introduce parallel heap verification
...
Introduce parallel heap verification in G1.
Reviewed-by: jcoomes, apetrusenko
2008-10-06 13:16:35 -04:00
Xiomara Jayasena
76df5ec473
6754988: Update copyright year
...
Update for files that have been modified starting July 2008
Reviewed-by: ohair, tbell
2008-10-02 19:58:19 -07:00
John Coomes
e98b7ce059
6729594: par compact - remove unused block table implementation
...
Reviewed-by: tonyp, jmasa, apetrusenko
2008-09-30 13:15:27 -07:00
John Coomes
f2851186bb
6725697: par compact - rename class ChunkData to RegionData
...
Reviewed-by: iveresov, tonyp
2008-09-30 12:20:22 -07:00
John Coomes
2e52e9dff2
6716466: par compact - remove VerifyParallelOldWithMarkSweep code
...
Reviewed-by: jmasa
2008-09-30 11:49:31 -07:00
Igor Veresov
4204f82a1a
6740923: NUMA allocator: Ensure the progress of adaptive chunk resizing
...
Treat a chuck where the allocation has failed as fully used.
Reviewed-by: ysr
2008-09-27 00:33:13 -07:00
Antonios Printezis
c03ab32ab5
6742641: G1: NullPointerException during GCOld
...
An update buffer is not processed correctly, which causes roots into the collection set not to be scanned and, hence, for the heap to be corrupted. The cause is that an object is accessed after it has been explicitly deleted, which causes a race.
Reviewed-by: jcoomes, ysr
2008-09-22 09:56:49 -04:00
Y. Srinivas Ramakrishna
d9929c525b
Merge
2008-08-27 11:20:46 -07:00
Y. Srinivas Ramakrishna
aa6165d767
6722116: CMS: Incorrect overflow handling when using parallel concurrent marking
...
Fixed CMSConcMarkingTask::reset() to store the restart address upon a marking stack overflow and to use it as the base, suitably aligned, for restarting the scan in CMSConcMarkingTask::do_scan_and_mark().
Reviewed-by: jcoomes, tonyp
2008-08-26 14:54:48 -07:00
Antonios Printezis
cd9045f4e8
6740930: G1: compilation failure with latest gcc
...
Include DB fix to resolve a compilation issue with the latest gcc.
Reviewed-by: iveresov, ysr
2008-08-26 00:46:03 -04:00
Igor Veresov
48d3ec1660
6735416: G1: runThese javasoft.sqe.tests.lang.thrd011.thrd01101.thrd01101 fails
...
6622418: G1: assert(false,"Non-balanced monitor enter/exit!") fails
The mark-sweep compact (which we use for full gc) wrapper did not save the mark words for biased locked objects. The fix is to trivially call the appropriate methods.
Reviewed-by: tonyp, ysr
2008-08-22 11:48:25 -07:00
Antonios Printezis
70202307c0
Merge
2008-08-21 23:38:19 -04:00
Antonios Printezis
615777b6da
Merge
2008-08-21 23:36:31 -04:00
Jon Masamitsu
befe056b42
6728478: Assertion at parallel promotion from young to old generation
...
The fix avoids a call to address_for_index() in this particular situation where it is not known if the passed index is in bounds.
Reviewed-by: tonyp
2008-08-20 23:05:04 -07:00
Y. Srinivas Ramakrishna
57dabb4fcb
6722112: CMS: Incorrect encoding of overflown object arrays during concurrent precleaning
...
When an object array overflows during precleaning, we should have been marking the entire array dirty, not just its first card.
Reviewed-by: jmasa, poonam, tonyp
2008-08-14 17:58:35 -07:00
Antonios Printezis
e2b3310cb6
6722565: G1: assert !r->is_on_unclean_list() fires
...
Under certain circumstances, two cleanup threads can claim and process the same region.
Reviewed-by: apetrusenko, ysr
2008-08-06 11:57:31 -04:00
Jon Masamitsu
74b3de5c3b
6730514: assertion failure in mangling code when expanding by 0 bytes
...
An expansion by 0 bytes was not anticipated when the assertion was composed.
Reviewed-by: jjh, jcoomes, apetrusenko
2008-07-30 11:54:00 -07:00
Igor Veresov
09fd47bcef
6652160: G1: assert(cur_used_bytes == _g1->recalculate_used(),"It should!") at g1CollectorPolicy.cpp:1425
...
In attempt_allocation_slow() wait for the concurrent cleanup to complete before modifying _summary_bytes_used.
Reviewed-by: jmasa, apetrusenko
2008-07-30 10:45:52 -07:00
Jon Masamitsu
b8633a3b01
Merge
2008-07-28 15:30:23 -07:00
Coleen Phillimore
20dba03e99
6716785: implicit null checks not triggering with CompressedOops
...
Allocate alignment-sized page(s) below java heap so that memory accesses at heap_base+1page give signal and cause an implicit null check
Reviewed-by: kvn, jmasa, phh, jcoomes
2008-07-19 17:38:22 -04:00
Igor Veresov
1193f0f9db
6723228: NUMA allocator: assert(lgrp_id != -1, "No lgrp_id set")
...
6723229: NUMA allocator: assert(lgrp_num > 0, "There should be at least one locality group")
The fix takes care of the assertion triggered during TLAB resizing after reconfiguration. Also it now handles a defect in the topology graph, in which a single leaf node doesn't have memory.
Reviewed-by: jmasa
2008-07-17 10:26:33 -07:00
John Coomes
26625ab7f5
6724367: par compact could clear less young gen summary data
...
Reviewed-by: jmasa, apetrusenko
2008-07-11 16:11:50 -07:00
John Coomes
038a30dde3
6483129: par compact assertion failure (new_top > bottom)
...
Avoid computing the dense prefix if a space is empty
Reviewed-by: pbk, tonyp
2008-07-11 16:11:43 -07:00
John Coomes
398aa66a77
6718283: existing uses of *_FORMAT_W() were broken by 6521491
...
Reviewed-by: ysr, pbk
2008-07-11 16:11:34 -07:00
Erik Trimble
2d6f42d18c
Merge
2008-07-11 01:14:44 -07:00
Igor Veresov
2703662478
6723570: G1: assertion failure: p == current_top or oop(p)->is_oop(),"p is not a block start" (revisited!)
...
Fixed the incorrect assigment to G1OffsetTableContigSpace::_gc_time_stamp. Also added a little more paranoia to operations on a global timestamp.
Reviewed-by: tonyp
2008-07-10 09:29:54 -07:00
Jon Masamitsu
18dbebd143
6672698: mangle_unused_area() should not remangle the entire heap at each collection
...
Maintain a high water mark for the allocations in a space and mangle only up to that high water mark.
Reviewed-by: ysr, apetrusenko
2008-07-09 15:08:55 -07:00
Igor Veresov
07198ddeda
6702387: G1: assertion failure: assert(p == current_top || oop(p)->is_oop(),"p is not a block start")
...
Do not coalesce dead and moved objects when removing self-forwarding pointers during the evacuation failure. Also fixed a issue in a BOT refinement code for TLABs.
Reviewed-by: tonyp, jcoomes
2008-07-03 03:17:29 -07:00
Xiomara Jayasena
c96a95c4b8
6719955: Update copyright year
...
Update copyright year for files that have been modified in 2008
Reviewed-by: ohair, tbell
2008-07-02 12:55:16 -07:00
Y. Srinivas Ramakrishna
d44be8e3a0
6618726: Introduce -XX:+UnlockExperimentalVMOptions flag
...
Experimental() flags will protect features of an experimental nature that are not supported in the regular product build. Made UseG1GC an experimental flag.
Reviewed-by: jmasa, kamg, coleenp
2008-06-30 17:04:59 -07:00
Y. Srinivas Ramakrishna
f521ab4f1a
Merge
2008-06-24 13:20:34 -07:00
John Coomes
93584b3060
6676016: ParallelOldGC leaks memory
...
Ensure that GCTask threads release resource and handle memory
Reviewed-by: jmasa, chrisphi
2008-06-18 18:36:47 -07:00
Y. Srinivas Ramakrishna
07ef2f8f38
Merge
2008-06-12 14:02:35 -07:00
Y. Srinivas Ramakrishna
ac061d0424
Merge
2008-06-12 13:50:55 -07:00
Igor Veresov
a82afd549a
6710665: G1: guarantee(_cm->out_of_regions() && _cm->region_stack_empty() && _task_queue->size() == 0, ...)
...
Remove the incorrect assumptions from guarantee()s.
Reviewed-by: ysr, tonyp
2008-06-11 05:12:19 -07:00
John Coomes
762f7c8f2b
Merge
2008-06-10 11:14:27 -07:00
Tom Rodriguez
01130cd21c
Merge
2008-06-10 09:57:24 -07:00
Coleen Phillimore
a2d6036a4d
6687581: Make CMS work with compressed oops
...
Make FreeChunk read markword instead of LSB in _klass pointer to indicate that it's a FreeChunk for compressed oops.
Reviewed-by: ysr, jmasa
2008-06-09 11:51:19 -04:00
Igor Veresov
ed4e9a5d5c
6711930: NUMA allocator: ParOld can create a hole less than minimal object size in the lgrp chunk
...
The fix takes care of three issues that can create a hole less a minimal object in the lgrp chunk
Reviewed-by: ysr, apetrusenko
2008-06-09 07:18:59 -07:00
Y. Srinivas Ramakrishna
18f3386a98
6711316: Open source the Garbage-First garbage collector
...
First mercurial integration of the code for the Garbage-First garbage collector.
Reviewed-by: apetrusenko, iveresov, jmasa, sgoldman, tonyp, ysr
2008-06-05 15:57:56 -07:00
Chuck Rasbold
8f5e42a671
Merge
2008-05-30 07:22:22 -07:00
Coleen Phillimore
646ceb4a45
6696264: assert("narrow oop can never be zero") for GCBasher & ParNewGC
...
Decouple set_klass() with zeroing the gap when compressed.
Reviewed-by: kvn, ysr, jrose
2008-05-28 21:06:24 -07:00
Vladimir Kozlov
e53e767d88
6703888: Compressed Oops: use the 32-bits gap after klass in a object
...
Use the gap also for a narrow oop field and a boxing object value.
Reviewed-by: coleenp, never
2008-05-21 16:31:35 -07:00
Daniel D. Daugherty
7c478e3028
Merge
2008-05-20 09:47:05 -07:00
Daniel D. Daugherty
e03f944292
Merge
2008-05-16 13:42:07 -07:00