Fri, 20 Aug 2010 12:01:10 -0700 Merge
tonyp [Fri, 20 Aug 2010 12:01:10 -0700] rev 6276
Merge
Fri, 20 Aug 2010 13:17:08 -0400 Merge
tonyp [Fri, 20 Aug 2010 13:17:08 -0400] rev 6275
Merge
Thu, 19 Aug 2010 12:02:10 -0700 6978533: CMS: Elide BOT update asserts until 6977974 is fixed correctly
ysr [Thu, 19 Aug 2010 12:02:10 -0700] rev 6274
6978533: CMS: Elide BOT update asserts until 6977974 is fixed correctly Reviewed-by: jcoomes, jmasa, tonyp
Fri, 20 Aug 2010 09:55:50 -0700 Merge
never [Fri, 20 Aug 2010 09:55:50 -0700] rev 6273
Merge
Thu, 19 Aug 2010 14:51:47 -0700 6978249: spill between cpu and fpu registers when those moves are fast
never [Thu, 19 Aug 2010 14:51:47 -0700] rev 6272
6978249: spill between cpu and fpu registers when those moves are fast Reviewed-by: kvn
Wed, 18 Aug 2010 01:22:16 -0700 6977640: Zero and Shark fixes
twisti [Wed, 18 Aug 2010 01:22:16 -0700] rev 6271
6977640: Zero and Shark fixes Summary: A number of fixes for Zero and Shark. Reviewed-by: twisti Contributed-by: Gary Benson <gbenson@redhat.com>
Fri, 13 Aug 2010 15:14:00 -0700 6976372: # assert(_owner == Thread::current()) failed: invariant
never [Fri, 13 Aug 2010 15:14:00 -0700] rev 6270
6976372: # assert(_owner == Thread::current()) failed: invariant Reviewed-by: kvn, twisti
Thu, 12 Aug 2010 23:34:34 -0700 6975006: assert(check.is_deoptimized_frame()) failed: missed deopt
never [Thu, 12 Aug 2010 23:34:34 -0700] rev 6269
6975006: assert(check.is_deoptimized_frame()) failed: missed deopt Reviewed-by: kvn, twisti
Thu, 12 Aug 2010 16:38:23 -0700 6974176: ShouldNotReachHere, instanceKlass.cpp:1426
never [Thu, 12 Aug 2010 16:38:23 -0700] rev 6268
6974176: ShouldNotReachHere, instanceKlass.cpp:1426 Reviewed-by: kvn, twisti
Fri, 20 Aug 2010 04:08:08 -0700 Merge
trims [Fri, 20 Aug 2010 04:08:08 -0700] rev 6267
Merge
Fri, 20 Aug 2010 03:47:09 -0700 6978726: Bump the HS19 build number to 07
trims [Fri, 20 Aug 2010 03:47:09 -0700] rev 6266
6978726: Bump the HS19 build number to 07 Summary: Update the HS19 build number to 07 Reviewed-by: jcoomes
Thu, 19 Aug 2010 14:08:58 -0400 Merge
tonyp [Thu, 19 Aug 2010 14:08:58 -0400] rev 6265
Merge
Wed, 18 Aug 2010 17:44:33 -0400 Merge
johnc [Wed, 18 Aug 2010 17:44:33 -0400] rev 6264
Merge
Wed, 18 Aug 2010 10:59:06 -0700 6977924: Changes for 6975078 produce build error with certain gcc versions
johnc [Wed, 18 Aug 2010 10:59:06 -0700] rev 6263
6977924: Changes for 6975078 produce build error with certain gcc versions Summary: The changes introduced for 6975078 assign badHeapOopVal to the _allocation field in the ResourceObj class. In 32 bit linux builds with certain versions of gcc this assignment will be flagged as an error while compiling allocation.cpp. In 32 bit builds the constant value badHeapOopVal (which is cast to an intptr_t) is negative. The _allocation field is typed as an unsigned intptr_t and gcc catches this as an error. Reviewed-by: jcoomes, ysr, phh
Wed, 18 Aug 2010 11:39:21 -0700 6977970: CMS: concurrentMarkSweepGeneration.cpp:7947 assert(addr <= _limit) failed: sweep invariant
ysr [Wed, 18 Aug 2010 11:39:21 -0700] rev 6262
6977970: CMS: concurrentMarkSweepGeneration.cpp:7947 assert(addr <= _limit) failed: sweep invariant Summary: Allow for the possibility (when the heap is expanding) that the sweep might skip over and past, rather than necessarily step on, the sweep limit determined at the beginning of a concurrent marking cycle. Reviewed-by: jmasa, tonyp
Tue, 17 Aug 2010 14:40:00 -0400 6975964: G1: print out a more descriptive message for evacuation failure when +PrintGCDetails is set
tonyp [Tue, 17 Aug 2010 14:40:00 -0400] rev 6261
6975964: G1: print out a more descriptive message for evacuation failure when +PrintGCDetails is set Summary: we're renaming "evacuation failure" to "to-space overflow". I'm also piggy-backing a small additional change which removes the "Mark closure took..." output. Reviewed-by: ysr, johnc
Tue, 17 Aug 2010 14:40:00 -0400 6974928: G1: sometimes humongous objects are allocated in young regions
tonyp [Tue, 17 Aug 2010 14:40:00 -0400] rev 6260
6974928: G1: sometimes humongous objects are allocated in young regions Summary: as the title says, sometimes we are allocating humongous objects in young regions and we shouldn't. Reviewed-by: ysr, johnc
Tue, 17 Aug 2010 14:40:00 -0400 6959014: G1: assert(minimum_desired_capacity <= maximum_desired_capacity) failed: sanity check
tonyp [Tue, 17 Aug 2010 14:40:00 -0400] rev 6259
6959014: G1: assert(minimum_desired_capacity <= maximum_desired_capacity) failed: sanity check Summary: There are a few issues in the code that calculates whether to resize the heap and by how much: a) some calculations can overflow 32-bit size_t's, b) min_desired_capacity is not bounded by the max heap size, and c) the assrt that fires is in the wrong place. The fix also includes some tidying up of the related verbose code. Reviewed-by: ysr, jmasa
Mon, 16 Aug 2010 15:58:42 -0700 6948538: CMS: BOT walkers can fall into object allocation and initialization cracks
ysr [Mon, 16 Aug 2010 15:58:42 -0700] rev 6258
6948538: CMS: BOT walkers can fall into object allocation and initialization cracks Summary: GC workers now recognize an intermediate transient state of blocks which are allocated but have not yet completed initialization. blk_start() calls do not attempt to determine the size of a block in the transient state, rather waiting for the block to become initialized so that it is safe to query its size. Audited and ensured the order of initialization of object fields (klass, free bit and size) to respect block state transition protocol. Also included some new assertion checking code enabled in debug mode. Reviewed-by: chrisphi, johnc, poonam
Tue, 17 Aug 2010 22:52:50 -0700 6977952: Test: Sync missing tests from hs16.3 to hs17.x
asaha [Tue, 17 Aug 2010 22:52:50 -0700] rev 6257
6977952: Test: Sync missing tests from hs16.3 to hs17.x Reviewed-by: wrockett
Wed, 18 Aug 2010 16:11:21 -0700 Merge
trims [Wed, 18 Aug 2010 16:11:21 -0700] rev 6256
Merge
Sat, 14 Aug 2010 00:47:52 -0700 Merge
johnc [Sat, 14 Aug 2010 00:47:52 -0700] rev 6255
Merge
Wed, 11 Aug 2010 13:12:28 -0700 6976378: ParNew: stats are printed unconditionally in debug builds
jcoomes [Wed, 11 Aug 2010 13:12:28 -0700] rev 6254
6976378: ParNew: stats are printed unconditionally in debug builds Reviewed-by: tonyp
Tue, 10 Aug 2010 14:53:35 -0700 6973570: OrderAccess::storestore() scales poorly on multi-socket x64 and sparc: cache-line ping-ponging
ysr [Tue, 10 Aug 2010 14:53:35 -0700] rev 6253
6973570: OrderAccess::storestore() scales poorly on multi-socket x64 and sparc: cache-line ping-ponging Summary: volatile store to static variable removed in favour of a volatile store to stack to avoid excessive cache coherency traffic; verified that the volatile store is not elided by any of our current compilers. Reviewed-by: dholmes, dice, jcoomes, kvn
Mon, 09 Aug 2010 18:03:50 -0700 6970376: ParNew: shared TaskQueue statistics
jcoomes [Mon, 09 Aug 2010 18:03:50 -0700] rev 6252
6970376: ParNew: shared TaskQueue statistics Reviewed-by: ysr
Mon, 09 Aug 2010 05:41:05 -0700 6966222: G1: simplify TaskQueue overflow handling
jcoomes [Mon, 09 Aug 2010 05:41:05 -0700] rev 6251
6966222: G1: simplify TaskQueue overflow handling Reviewed-by: tonyp, ysr
Fri, 06 Aug 2010 10:17:21 -0700 6930581: G1: assert(ParallelGCThreads > 1 || n_yielded() == _hrrs->occupied(),"Should have yielded all the ..
johnc [Fri, 06 Aug 2010 10:17:21 -0700] rev 6250
6930581: G1: assert(ParallelGCThreads > 1 || n_yielded() == _hrrs->occupied(),"Should have yielded all the .. Summary: During RSet updating, when ParallelGCThreads is zero, references that point into the collection set are added directly the referenced region's RSet. This can cause the sparse table in the RSet to expand. RSet scanning and the "occupied" routine will then operate on different instances of the sparse table causing the assert to trip. This may also cause some cards added post expansion to be missed during RSet scanning. When ParallelGCThreads is non-zero such references are recorded on the "references to be scanned" queue and the card containing the reference is recorded in a dirty card queue for use in the event of an evacuation failure. Employ the parallel code in the serial case to avoid expanding the RSets of regions in the collection set. Reviewed-by: iveresov, ysr, tonyp
Wed, 04 Aug 2010 13:03:23 -0400 6963209: G1: remove the concept of abandoned pauses
tonyp [Wed, 04 Aug 2010 13:03:23 -0400] rev 6249
6963209: G1: remove the concept of abandoned pauses Summary: As part of 6944166 we disabled the concept of abandoned pauses (i.e., if the collection set is empty, we would still try to do a pause even if it is to update the RSets and scan the roots). This changeset removes the code and structures associated with abandoned pauses. Reviewed-by: iveresov, johnc
Thu, 22 Jul 2010 10:27:41 -0400 6962589: remove breadth first scanning code from parallel gc
tonyp [Thu, 22 Jul 2010 10:27:41 -0400] rev 6248
6962589: remove breadth first scanning code from parallel gc Summary: Remove the breadth-first copying order from ParallelScavenge and use depth-first by default. Reviewed-by: jcoomes, ysr, johnc
Mon, 02 Aug 2010 12:51:43 -0700 6814437: G1: remove the _new_refs array
johnc [Mon, 02 Aug 2010 12:51:43 -0700] rev 6247
6814437: G1: remove the _new_refs array Summary: The per-worker _new_refs array is used to hold references that point into the collection set. It is populated during RSet updating and subsequently processed. In the event of an evacuation failure it processed again to recreate the RSets of regions in the collection set. Remove the per-worker _new_refs array by processing the references directly. Use a DirtyCardQueue to hold the cards containing the references so that the RSets of regions in the collection set can be recreated when handling an evacuation failure. Reviewed-by: iveresov, jmasa, tonyp
(0) -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 +30000 tip