215 Commits

Author SHA1 Message Date
Jon Masamitsu
f1847266b7 6786346: intermittent Internal Error (src/share/vm/memory/cardTableModRefBS.cpp:226)
Two assertions were incorrectly composed.

Reviewed-by: tonyp
2009-02-17 15:35:58 -08:00
Jon Masamitsu
3b5d6a04dd 6690928: Use spinning in combination with yields for workstealing termination
Substitute a spin loop for most calls to yield() to reduce the stress on the system.

Reviewed-by: tonyp
2009-02-08 13:18:01 -08:00
Jon Masamitsu
39b23ff0a0 6792421: assert(_bitMap->isMarked(addr+size-1),inconsistent Printezis mark)
The CMS concurrent precleaning and concurrent marking phases should work around classes that are undergoing redefinition.

Reviewed-by: ysr, tonyp
2009-01-31 00:15:00 -08:00
Y. Srinivas Ramakrishna
f031c45430 6786503: Overflow list performance can be improved
Avoid overflow list walk in CMS & ParNew when it is unnecessary. Fix a couple of correctness issues, including a C-heap leak, in ParNew at the intersection of promotion failure, work queue overflow and object array chunking. Add stress testing option and related assertion checking.

Reviewed-by: jmasa
2009-01-26 12:47:21 -08:00
John Coomes
2ba0d5b055 Merge 2009-01-14 14:12:55 -08:00
Jon Masamitsu
c2ff9781c7 6692899: CMS: many vm.parallel_class_loading tests fail with assert "missing Printezis mark"
The CMS concurrent precleaning and concurrent marking phases should work around classes that are undergoing redefinition.

Reviewed-by: ysr, dcubed
2009-01-11 16:58:24 -08:00
Jon Masamitsu
3474623106 6689653: JMapPerm fails with UseConcMarkSweepIncGC and compressed oops off
Added safe_object_iterate() for use by JMapPerm.

Reviewed-by: tonyp
2009-01-06 07:05:05 -08:00
Erik Trimble
ac1f463988 Merge 2008-12-20 09:58:36 -08:00
Erik Trimble
efd43c045a Merge 2008-12-20 09:57:03 -08:00
Jon Masamitsu
91caa3b23f Merge 2008-12-19 12:15:34 -08:00
John Coomes
a88e734cac 6786195: many nsk.monitoring tests fail with -server -Xcomp
Remove Universe::_fillerArrayKlassObj and associated code

Reviewed-by: jmasa, tonyp
2008-12-18 01:27:04 -08:00
Xiomara Jayasena
99f0eac1a2 6785258: Update copyright year
Update copyright for files that have been modified starting July 2008 to Dec 2008

Reviewed-by: katleman, ohair, tbell
2008-12-15 16:55:11 -08:00
Swamy Venkataramanappa
06e37c03fb 6653214: MemoryPoolMXBean.setUsageThreshold() does not support large heap sizes
Reviewed-by: ysr, mchung
2008-12-15 13:58:57 -08:00
John Coomes
000b184507 6578152: fill_region_with_object has usability and safety issues
Reviewed-by: apetrusenko, ysr
2008-12-11 12:05:08 -08:00
Y. Srinivas Ramakrishna
26f6b1692a 6782457: CMS: Livelock in CompactibleFreeListSpace::block_size()
6736295: SIGSEGV in product jvm, assertion "these are the only valid states during a mark sweep" in fastdebug

Restructured the code in the perm gen allocation retry loop so as to avoid "safepoint-blocking" on locks, in this case the Heap_lock, while holding uninitialized allocated heap storage.

Reviewed-by: apetrusenko, iveresov, jcoomes, jmasa, poonam
2008-12-10 23:46:10 -08:00
Y. Srinivas Ramakrishna
16aa57cb4b 6778647: snap(), snap_policy() should be renamed setup(), setup_policy()
Renamed Reference{Policy,Pocessor} methods from snap{,_policy}() to setup{,_policy}()

Reviewed-by: apetrusenko
2008-12-01 23:25:24 -08:00
Y. Srinivas Ramakrishna
7d7cf3f8af 6684579: SoftReference processing can be made more efficient
For current soft-ref clearing policies, we can decide at marking time if a soft-reference will definitely not be cleared, postponing the decision of whether it will definitely be cleared to the final reference processing phase. This can be especially beneficial in the case of concurrent collectors where the marking is usually concurrent but reference processing is usually not.

Reviewed-by: jmasa
2008-11-20 16:56:09 -08:00
Y. Srinivas Ramakrishna
db6bef2c70 6722113: CMS: Incorrect overflow handling during precleaning of Reference lists
When we encounter marking stack overflow during precleaning of Reference lists, we were using the overflow list mechanism, which can cause problems on account of mutating the mark word of the header because of conflicts with mutator accesses and updates of that field. Instead we should use the usual mechanism for overflow handling in concurrent phases, namely dirtying of the card on which the overflowed object lies. Since precleaning effectively does a form of discovered list processing, albeit with discovery enabled, we needed to adjust some code to be correct in the face of interleaved processing and discovery.

Reviewed-by: apetrusenko, jcoomes
2008-11-20 12:27:41 -08:00
John Coomes
401e04572a 6765804: GC "dead ratios" should be unsigned
Reviewed-by: ysr, tonyp
2008-10-29 06:30:02 -07:00
Karen Kinnear
4fa4c137a2 Merge 2008-10-22 15:07:23 -04:00
Karen Kinnear
347534f43b 6761092: jvm crashes when CDS is enabled
CDS hardcoded max c++ virtual method table increased

Reviewed-by: coleenp, xlu, jmasa
2008-10-22 14:48:08 -04:00
Erik Trimble
50964694fe Merge 2008-10-07 11:01:35 -07: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
Y. Srinivas Ramakrishna
d9929c525b Merge 2008-08-27 11:20:46 -07:00
Y. Srinivas Ramakrishna
5e6c038292 Merge 2008-08-25 12:16:34 -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
Antonios Printezis
b00baea4a1 6736341: PermGen size is insufficient for jconsole
Removing two buggy methods that should not be used, but ended up being used due to a re-organization in the class hierarchy.

Reviewed-by: jmasa, ysr, kamg, coleenp
2008-08-19 17:55:15 -04:00
Andrei Pangin
059e448264 Merge 2008-08-19 06:02:07 -07:00
Xiaobin Lu
cf5e518aff 6459085: naked pointer subtractions in class data sharing code
Reviewed-by: jcoomes
2008-08-18 14:53:36 -07:00
Jon Masamitsu
b28ffeff6e Merge 2008-08-04 12:15:55 -07:00
Jon Masamitsu
b57ca9ed91 Merge 2008-08-04 12:11:36 -07: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
Jon Masamitsu
b8633a3b01 Merge 2008-07-28 15:30:23 -07:00
Keith McGuigan
74faacc945 6721093: -XX:AppendRatio=N not supported
Add mechanism to ignore unsupported flags for a set period of time

Reviewed-by: acorn, never, coleenp
2008-07-28 14:07:44 -04: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
Erik Trimble
2d6f42d18c Merge 2008-07-11 01:14:44 -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
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
b6c292d65d 6718086: CMS assert: _concurrent_iteration_safe_limit update missed
Initialize the field correctly in ContiguousSpace's constructor and initialize() methods, using the latter for the survivor spaces upon initial construction or a subsequent resizing of the young generation. Add some missing Space sub-class constructors.

Reviewed-by: apetrusenko
2008-06-23 16:49:37 -07:00
Y. Srinivas Ramakrishna
c201c739e4 Merge 2008-06-17 08:40:48 -07:00
Jon Masamitsu
d5ded29055 Merge 2008-06-12 14:23:34 -07:00
Y. Srinivas Ramakrishna
ac061d0424 Merge 2008-06-12 13:50:55 -07:00
Jon Masamitsu
0568ea9ed4 6688799: Second fix for Guarantee failure "Unexpected dirty card found"
Expand cardtable without committing over existing regions.

Reviewed-by: apetrusenko
2008-06-10 07:26:42 -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
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
Igor Veresov
035662396c Merge 2008-05-04 03:29:31 -07:00
Andrey Petrusenko
f784be24d1 Merge 2008-04-16 12:58:03 +04:00
Coleen Phillimore
4a831d45f0 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv

Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold
2008-04-13 17:43:42 -04:00