1. 27 1月, 2012 1 次提交
  2. 15 12月, 2011 1 次提交
  3. 28 11月, 2011 1 次提交
  4. 23 11月, 2011 1 次提交
  5. 23 9月, 2011 1 次提交
    • J
      6484982: G1: process references during evacuation pauses · 9c3adbcc
      johnc 提交于
      Summary: G1 now uses two reference processors - one is used by concurrent marking and the other is used by STW GCs (both full and incremental evacuation pauses). In an evacuation pause, the reference processor is embedded into the closures used to scan objects. Doing so causes causes reference objects to be 'discovered' by the reference processor. At the end of the evacuation pause, these discovered reference objects are processed - preserving (and copying) referent objects (and their reachable graphs) as appropriate.
      Reviewed-by: ysr, jwilhelm, brutisso, stefank, tonyp
      9c3adbcc
  6. 10 8月, 2011 1 次提交
  7. 02 8月, 2011 1 次提交
  8. 07 7月, 2011 1 次提交
  9. 24 5月, 2011 1 次提交
  10. 13 5月, 2011 1 次提交
  11. 27 4月, 2011 1 次提交
    • Y
      7039089: G1: changeset for 7037276 broke heap verification, and related cleanups · cdee9464
      ysr 提交于
      Summary: In G1 heap verification, we no longer scan perm to G1-collected heap refs as part of process_strong_roots() but rather in a separate explicit oop iteration over the perm gen. This preserves the original perm card-marks. Added a new assertion in younger_refs_iterate() to catch a simple subcase where the user may have forgotten a prior save_marks() call, as happened in the case of G1's attempt to iterate perm to G1 refs when verifying the heap before exit. The assert was deliberately weakened for ParNew+CMS and will be fixed for that combination in a future CR. Also made some (non-G1) cleanups related to code and comments obsoleted by the migration of Symbols to the native heap.
      Reviewed-by: iveresov, jmasa, tonyp
      cdee9464
  12. 23 3月, 2011 1 次提交
  13. 18 3月, 2011 1 次提交
  14. 15 3月, 2011 1 次提交
  15. 08 2月, 2011 1 次提交
    • Y
      6912621: iCMS: Error: assert(_markBitMap.isMarked(addr + 1),"Missing Printezis bit?") · 251d4f53
      ysr 提交于
      Summary: Fix block_size_if_printezis_bits() so it does not expect the bits, only uses them when available. Fix block_size_no_stall() so it does not stall when the bits are missing such cases, letting the caller deal with zero size returns. Constant pool cache oops do not need to be unparsable or conc_unsafe after their klass pointer is installed. Some cosmetic clean-ups and some assertion checking for conc-usafety which, in the presence of class file redefinition, has no a-priori time boundedness, so all GCs must be able to safely deal with putatively conc-unsafe objects in a stop-world pause.
      Reviewed-by: jmasa, johnc
      251d4f53
  16. 28 1月, 2011 1 次提交
  17. 20 1月, 2011 1 次提交
  18. 14 1月, 2011 1 次提交
  19. 11 1月, 2011 1 次提交
  20. 07 1月, 2011 1 次提交
  21. 08 12月, 2010 1 次提交
    • 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
  22. 24 11月, 2010 1 次提交
  23. 24 10月, 2010 1 次提交
  24. 30 9月, 2010 1 次提交
    • Y
      6692906: CMS: parallel concurrent marking may be prone to hanging or stalling... · f1d21486
      ysr 提交于
      6692906: CMS: parallel concurrent marking may be prone to hanging or stalling mutators for periods of time
      Summary: Inserted missing yield(check)s in closures used during the work-stealing phase of parallel concurrent marking, a missing synchronous yield-request in the cms perm gen allocation path, and a terminator-terminator for the offer_termination invocation that monitors the yield status of the concurrent marking task. Elaborated some documentation comments and made some task queue termination loop flags configurable at start-up to aid debugging in the field.
      Reviewed-by: jmasa, johnc, poonam
      f1d21486
  25. 29 9月, 2010 1 次提交
  26. 11 9月, 2010 1 次提交
  27. 21 9月, 2010 1 次提交
  28. 19 8月, 2010 1 次提交
  29. 17 8月, 2010 1 次提交
    • Y
      6948538: CMS: BOT walkers can fall into object allocation and initialization cracks · 569b6fe2
      ysr 提交于
      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
      569b6fe2
  30. 31 7月, 2010 1 次提交
  31. 17 7月, 2010 1 次提交
  32. 28 5月, 2010 2 次提交
  33. 11 5月, 2010 1 次提交
  34. 04 5月, 2010 2 次提交
  35. 14 4月, 2010 1 次提交
  36. 04 3月, 2010 1 次提交
  37. 24 2月, 2010 1 次提交
  38. 22 1月, 2010 1 次提交