7171 Commits

Author SHA1 Message Date
Y. Srinivas Ramakrishna
8baafdfd45 7005259: CMS: BubbleUpRef asserts referent(obj)->is_oop() failed: Enqueued a bad referent
Relaxed the assert by allowing NULL referents when discovery may be concurrent.

Reviewed-by: johnc, jcoomes
2010-12-09 09:22:57 -08:00
Y. Srinivas Ramakrishna
544b475fc5 7001033: assert(gch->gc_cause() == GCCause::_scavenge_alot || !gch->incremental_collection_failed())
7002546: regression on SpecJbb2005 on 7b118 comparing to 7b117 on small heaps

Relaxed assertion checking related to incremental_collection_failed flag to allow for ExplicitGCInvokesConcurrent behaviour where we do not want a failing scavenge to bail to a stop-world collection. Parameterized incremental_collection_will_fail() so we can selectively use, or not use, as appropriate, the statistical prediction at specific use sites. This essentially reverts the scavenge bail-out logic to what it was prior to some recent changes that had inadvertently started using the statistical prediction which can be noisy in the presence of bursty loads. Added some associated verbose non-product debugging messages.

Reviewed-by: johnc, tonyp
2010-12-07 21:55:53 -08:00
John Cuthbertson
4aaa89ea60 Merge 2010-12-07 16:44:34 -08:00
John Cuthbertson
8f4579fe60 6994628: G1: Test gc/gctests/FinalizeTest05 fails (one live object is finalized)
The Solaris Studio 12 update 1 C++ compiler was incorrectly re-ordering the reads of an object's mark word in oopDesc::forward_to_atomic(). This opened a small window where one thread could execute the successful CAS path even though another thread had already successfully forwarded the object. This could result in an object being copied twice. The code in oopDesc::forward_to_atomic() was changed to read the mark word once.

Reviewed-by: ysr, tonyp
2010-12-07 16:18:45 -08:00
Antonios Printezis
edcfaf0f84 6994056: G1: when GC locker is active, extend the Eden instead of allocating into the old gen
Allow the eden to the expanded up to a point when the GC locker is active.

Reviewed-by: jwilhelm, johnc, ysr, jcoomes
2010-12-07 16:47:42 -05:00
Antonios Printezis
dcf8c40e3a 7003860: G1: assert(_cur_alloc_region == NULL || !expect_null_cur_alloc_region) fails
Wrong assumption about expecting the current alloc region expected to be NULL in expand_and_allocate().

Reviewed-by: brutisso, ysr
2010-12-02 13:20:39 -05:00
John Cuthbertson
1065281a98 6983204: G1: Nightly test nsk/regression/b4958615 failing with +ExplicitGCInvokesConcurrent
Enable reference discovery during concurrent marking by setting the reference processor field of the concurrent marking closure. Keep reference objects on the discovered reference lists alive during incremental evacuation pauses until they are processed at the end of concurrent marking.

Reviewed-by: ysr, tonyp
2010-12-01 17:34:02 -08:00
Antonios Printezis
bb23e30511 6974966: G1: unnecessary direct-to-old allocations
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
2010-08-24 17:24:33 -04:00
Stefan Karlsson
8006fe8f75 6989984: Use standard include model for Hospot
Replaced MakeDeps and the includeDB files with more standardized solutions.

Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
Coleen Phillimore
01f78952da Merge 2010-11-23 15:01:43 -05:00
Gary Benson
7b0fb2a1e3 7002129: Zero and Shark fixes, 3rd
6970683 and 6953144 introduced changes that need to be implemented for Zero and Shark.

Reviewed-by: twisti
2010-11-23 04:33:42 -08:00
Coleen Phillimore
ced35487cb Merge 2010-11-19 23:46:06 -05:00
Igor Veresov
15c6dde68a Merge 2010-11-19 17:01:34 -08:00
Jon Masamitsu
6d7849e8e7 Merge 2010-11-19 13:19:49 -08:00
Poonam Bajaj
b91e418b3e 6837842: JNI_CreateJavaVM crashes under impersonation
Reviewed-by: acorn, dholmes
2010-11-19 03:41:50 -08:00
Zhengyu Gu
04b08adf06 6751923: JNDI wake up when clock_settime() is called
Ported Chris Phillips' patch from jdk5 to jdk7

Reviewed-by: chrisphi, coleenp
2010-11-18 14:37:46 -05:00
Vladimir Kozlov
606ee163ca 7000491: assert(false) failed: should be optimized out in SharedRuntime::g1_wb_pre
Wrong value type is used for NULL store when clearing the detail message of the preallocated exception object.

Reviewed-by: never, iveresov
2010-11-18 09:52:48 -08:00
Zhengyu Gu
dd078e8562 Merge 2010-11-17 09:21:51 -05:00
John Cuthbertson
92aa340360 Merge 2010-11-16 16:12:28 -08:00
Igor Veresov
5c238caed1 7000349: Tiered reacts incorrectly to C1 compilation failures
Fix policy reaction to C1 comilation failures, make C1 properly report errors.

Reviewed-by: kvn
2010-11-16 15:57:16 -08:00
John Cuthbertson
e5344b854c 6978187: G1: assert(ParallelGCThreads> 1 || n_yielded() == _hrrs->occupied()) strikes again
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
2010-11-16 14:07:33 -08:00
Y. Srinivas Ramakrishna
9af444d011 7000578: CMS: assert(SafepointSynchronize::is_at_safepoint()) failed: Else races are possible
Weakened assert in onj_is_alive() to allow its use at initialization time when is_at_safepoint() normally reports false; added some related asserts to check order of is_init_completed() after Universe::is_fully_initialized().

Reviewed-by: jcoomes
2010-11-16 13:58:48 -08:00
Jon Masamitsu
fbe476856f Merge 2010-11-15 16:25:14 -08:00
J. Duke
e589dbf67e Merge 2017-07-05 17:27:29 +02:00
J. Duke
3874ae3370 Merge 2017-07-05 17:27:26 +02:00
J. Duke
0e1d21ac3d Merge 2017-07-05 17:27:24 +02:00
J. Duke
5fa380626f Merge 2017-07-05 17:27:21 +02:00
J. Duke
da51c5b9c3 Merge 2017-07-05 17:27:18 +02:00
J. Duke
ed71f7957d Merge 2017-07-05 17:27:15 +02:00
J. Duke
81dc2769c4 Merge 2017-07-05 17:27:12 +02:00
J. Duke
d186db2030 Added tag jdk7-b118 for changeset 2e876e59938a 2017-07-05 17:26:57 +02:00
J. Duke
8b3d68fe65 Merge 2017-07-05 17:26:57 +02:00
J. Duke
8bab80ca2b Merge 2017-07-05 17:26:55 +02:00
J. Duke
a4ce46a1b1 Merge 2017-07-05 17:26:50 +02:00
J. Duke
0059f7f0cb Merge 2017-07-05 17:26:46 +02:00
J. Duke
7159e1b97a Merge 2017-07-05 17:26:43 +02:00
J. Duke
0616b15714 Merge 2017-07-05 17:26:39 +02:00
J. Duke
93ffd30adf Merge 2017-07-05 17:26:22 +02:00
J. Duke
643fc4346f Added tag jdk7-b117 for changeset 228e73f288c5 2017-07-05 17:26:05 +02:00
J. Duke
44a4e2bc87 Merge 2017-07-05 17:26:04 +02:00
J. Duke
64ca9ef411 Merge 2017-07-05 17:26:01 +02:00
J. Duke
dad0f958c5 Merge 2017-07-05 17:26:00 +02:00
J. Duke
3ea48e5a18 Merge 2017-07-05 17:25:57 +02:00
J. Duke
859206c880 Merge 2017-07-05 17:25:55 +02:00
J. Duke
45087fe3fe Merge 2017-07-05 17:25:53 +02:00
J. Duke
2617c60323 Merge 2017-07-05 17:25:50 +02:00
J. Duke
2480f55ce9 Added tag jdk7-b116 for changeset a4e6aa1f45ad 2017-07-05 17:25:43 +02:00
J. Duke
af4b8efc5b Merge 2017-07-05 17:25:43 +02:00
J. Duke
ebd57a584f Merge 2017-07-05 17:25:40 +02:00
J. Duke
77386bb764 Merge 2017-07-05 17:25:35 +02:00