1. 08 12月, 2010 4 次提交
    • Y
      7001033: assert(gch->gc_cause() == GCCause::_scavenge_alot ||... · 8be7836d
      ysr 提交于
      7001033: assert(gch->gc_cause() == GCCause::_scavenge_alot || !gch->incremental_collection_failed())
      7002546: regression on SpecJbb2005 on 7b118 comparing to 7b117 on small heaps
      Summary: 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
      8be7836d
    • J
      Merge · adff88a9
      johnc 提交于
      adff88a9
    • J
      6994628: G1: Test gc/gctests/FinalizeTest05 fails (one live object is finalized) · a669d665
      johnc 提交于
      Summary: 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
      a669d665
    • T
      6994056: G1: when GC locker is active, extend the Eden instead of allocating into the old gen · ca3e35c8
      tonyp 提交于
      Summary: Allow the eden to the expanded up to a point when the GC locker is active.
      Reviewed-by: jwilhelm, johnc, ysr, jcoomes
      ca3e35c8
  2. 03 12月, 2010 1 次提交
  3. 02 12月, 2010 1 次提交
  4. 25 8月, 2010 1 次提交
    • T
      6974966: G1: unnecessary direct-to-old allocations · 41dac17c
      tonyp 提交于
      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
      41dac17c
  5. 24 11月, 2010 2 次提交
  6. 23 11月, 2010 1 次提交
  7. 20 11月, 2010 3 次提交
    • C
      Merge · b76f4992
      coleenp 提交于
      b76f4992
    • I
      Merge · 22d4b2a0
      iveresov 提交于
      22d4b2a0
    • J
      Merge · 81937723
      jmasa 提交于
      81937723
  8. 19 11月, 2010 3 次提交
  9. 17 11月, 2010 5 次提交
    • Z
      Merge · ac1033dc
      zgu 提交于
      ac1033dc
    • J
      Merge · 0baf2379
      johnc 提交于
      0baf2379
    • I
      7000349: Tiered reacts incorrectly to C1 compilation failures · a9d5455e
      iveresov 提交于
      Summary: Fix policy reaction to C1 comilation failures, make C1 properly report errors.
      Reviewed-by: kvn
      a9d5455e
    • J
      6978187: G1: assert(ParallelGCThreads> 1 || n_yielded() == _hrrs->occupied()) strikes again · 8d02802f
      johnc 提交于
      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
      8d02802f
    • Y
      7000578: CMS: assert(SafepointSynchronize::is_at_safepoint()) failed: Else races are possible · 3e22a1c3
      ysr 提交于
      Summary: 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
      3e22a1c3
  10. 16 11月, 2010 1 次提交
    • J
      Merge · 1cb7ed62
      jmasa 提交于
      1cb7ed62
  11. 13 11月, 2010 1 次提交
  12. 12 11月, 2010 7 次提交
  13. 11 11月, 2010 2 次提交
    • T
      Merge · 6a5287b9
      trims 提交于
      6a5287b9
    • T
      Merge · d3be82dc
      trims 提交于
      d3be82dc
  14. 10 11月, 2010 3 次提交
  15. 09 11月, 2010 1 次提交
  16. 07 11月, 2010 2 次提交
  17. 06 11月, 2010 2 次提交