tonyp [Tue, 24 Aug 2010 17:24:33 -0400] rev 7398
6974966: G1: unnecessary direct-to-old allocations
Summary: This change revamps the slow allocation path of G1. Improvements include the following: a) Allocations directly to old regions are now totally banned. G1 now only allows allocations out of young regions (with the only exception being humongous regions). b) The thread that allocates a new region (which is now guaranteed to be young) does not dirty all its cards. Each thread that successfully allocates out of a young region is now responsible for dirtying the cards that corresponding to the "block" that just got allocated. c) allocate_new_tlab() and mem_allocate() are now implemented differently and TLAB allocations are only done by allocate_new_tlab(). d) If a thread schedules an evacuation pause in order to satisfy an allocation request, it will perform the allocation at the end of the safepoint so that the thread that initiated the GC also gets "first pick" of any space made available by the GC. e) If a thread is unable to allocate a humongous object it will schedule an evacuation pause in case it reclaims enough regions so that the humongous allocation can be satisfied aftewards. f) The G1 policy is more careful to set the young list target length to be the survivor number +1. g) Lots of code tidy up, removal, refactoring to make future changes easier.
Reviewed-by: johnc, ysr
stefank [Tue, 23 Nov 2010 13:22:55 -0800] rev 7397
6989984: Use standard include model for Hospot
Summary: Replaced MakeDeps and the includeDB files with more standardized solutions.
Reviewed-by: coleenp, kvn, kamg
coleenp [Tue, 23 Nov 2010 15:01:43 -0500] rev 7396
Merge
twisti [Tue, 23 Nov 2010 04:33:42 -0800] rev 7395
7002129: Zero and Shark fixes, 3rd
Summary: 6970683 and 6953144 introduced changes that need to be implemented for Zero and Shark.
Reviewed-by: twisti
Contributed-by: Gary Benson <gbenson@redhat.com>
coleenp [Fri, 19 Nov 2010 23:46:06 -0500] rev 7394
Merge
poonam [Fri, 19 Nov 2010 03:41:50 -0800] rev 7393
6837842: JNI_CreateJavaVM crashes under impersonation
Reviewed-by: acorn, dholmes
zgu [Thu, 18 Nov 2010 14:37:46 -0500] rev 7392
6751923: JNDI wake up when clock_settime() is called
Summary: Ported Chris Phillips' patch from jdk5 to jdk7
Reviewed-by: chrisphi, coleenp
iveresov [Fri, 19 Nov 2010 17:01:34 -0800] rev 7391
Merge
kvn [Thu, 18 Nov 2010 09:52:48 -0800] rev 7390
7000491: assert(false) failed: should be optimized out in SharedRuntime::g1_wb_pre
Summary: Wrong value type is used for NULL store when clearing the detail message of the preallocated exception object.
Reviewed-by: never, iveresov
iveresov [Tue, 16 Nov 2010 15:57:16 -0800] rev 7389
7000349: Tiered reacts incorrectly to C1 compilation failures
Summary: Fix policy reaction to C1 comilation failures, make C1 properly report errors.
Reviewed-by: kvn
kvn [Fri, 12 Nov 2010 09:51:43 -0800] rev 7388
6999491: non-zero COOPs are used when they should not
Summary: HeapBaseMinAddress should be used only for a default heap size calculation.
Reviewed-by: iveresov, jcoomes, dholmes
jmasa [Fri, 19 Nov 2010 13:19:49 -0800] rev 7387
Merge
johnc [Tue, 16 Nov 2010 16:12:28 -0800] rev 7386
Merge
johnc [Tue, 16 Nov 2010 14:07:33 -0800] rev 7385
6978187: G1: assert(ParallelGCThreads> 1 || n_yielded() == _hrrs->occupied()) strikes again
Summary: An evacuation failure while copying the roots caused an object, A, to be forwarded to itself. During the subsequent RSet updating a reference to A was processed causing the reference to be added to the RSet of A's heap region. As a result of adding to the remembered set we ran into the issue described in 6930581 - the sparse table expanded and the RSet scanning code walked the cards in one instance of RHashTable (_cur) while the occupied() counts the cards in the expanded table (_next).
Reviewed-by: tonyp, iveresov