1. 24 5月, 2011 1 次提交
  2. 13 5月, 2011 1 次提交
  3. 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
  4. 23 3月, 2011 1 次提交
  5. 18 3月, 2011 1 次提交
  6. 15 3月, 2011 1 次提交
  7. 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
  8. 28 1月, 2011 1 次提交
  9. 20 1月, 2011 1 次提交
  10. 14 1月, 2011 1 次提交
  11. 11 1月, 2011 1 次提交
  12. 07 1月, 2011 1 次提交
  13. 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
  14. 24 11月, 2010 1 次提交
  15. 24 10月, 2010 1 次提交
  16. 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
  17. 29 9月, 2010 1 次提交
  18. 11 9月, 2010 1 次提交
  19. 21 9月, 2010 1 次提交
  20. 19 8月, 2010 1 次提交
  21. 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
  22. 31 7月, 2010 1 次提交
  23. 17 7月, 2010 1 次提交
  24. 28 5月, 2010 2 次提交
  25. 11 5月, 2010 1 次提交
  26. 04 5月, 2010 2 次提交
  27. 14 4月, 2010 1 次提交
  28. 04 3月, 2010 1 次提交
  29. 24 2月, 2010 1 次提交
  30. 22 1月, 2010 1 次提交
  31. 24 12月, 2009 1 次提交
    • Y
      6631166: CMS: better heuristics when combatting fragmentation · c290220e
      ysr 提交于
      Summary: Autonomic per-worker free block cache sizing, tunable coalition policies, fixes to per-size block statistics, retuned gain and bandwidth of some feedback loop filters to allow quicker reactivity to abrupt changes in ambient demand, and other heuristics to reduce fragmentation of the CMS old gen. Also tightened some assertions, including those related to locking.
      Reviewed-by: jmasa
      c290220e
  32. 11 11月, 2009 1 次提交
  33. 24 9月, 2009 1 次提交
  34. 16 9月, 2009 1 次提交
  35. 02 9月, 2009 1 次提交
    • Y
      4957990: Perm heap bloat in JVM · 763668ed
      ysr 提交于
      Summary: Treat ProfileData in MDO's as a source of weak, not strong, roots. Fixes the bug for stop-world collection -- the case of concurrent collection will be fixed separately.
      Reviewed-by: jcoomes, jmasa, kvn, never
      763668ed
  36. 25 8月, 2009 1 次提交
  37. 07 6月, 2009 1 次提交
  38. 29 3月, 2009 1 次提交