1. 22 4月, 2011 1 次提交
  2. 21 4月, 2011 1 次提交
  3. 20 4月, 2011 1 次提交
    • T
      7011855: G1: non-product flag to artificially grow the heap · dfbf6345
      tonyp 提交于
      Summary: It introduces non-product cmd line parameter G1DummyRegionsPerGC which indicates how many "dummy" regions to allocate at the end of each GC. This allows the G1 heap to grow artificially and makes concurrent marking cycles more frequent irrespective of what the application that is running is doing. The dummy regions will be found totally empty during cleanup so this parameter can also be used to stress the concurrent cleanup operation.
      Reviewed-by: brutisso, johnc
      dfbf6345
  4. 16 4月, 2011 1 次提交
  5. 15 4月, 2011 1 次提交
    • Y
      7036482: clear argument is redundant and unused in cardtable methods · 1a2f9848
      ysr 提交于
      Summary: Removed the unused clear argument to various cardtbale methods and unused mod_oop_in_space_iterate method. Unrelated to synopsis, added  a pair of clarifying parens in AllocationStats constructor.
      Reviewed-by: brutisso, jcoomes
      1a2f9848
  6. 08 4月, 2011 2 次提交
    • J
      6841742: par compact - remove unused/unsupported options · 44f5f047
      jcoomes 提交于
      Summary: ignore UseParallel{OldGCDensePrefix,OldGCCompacting,DensePrefixUpdate}
      Reviewed-by: jwilhelm, brutisso
      44f5f047
    • J
      7009266: G1: assert(obj->is_oop_or_null(true )) failed: Error · 6f87c7dd
      johnc 提交于
      Summary: A referent object that is only weakly reachable at the start of concurrent marking but is re-attached to the strongly reachable object graph during marking may not be marked as live. This can cause the reference object to be processed prematurely and leave dangling pointers to the referent object. Implement a read barrier for the java.lang.ref.Reference::referent field by intrinsifying the Reference.get() method, and intercepting accesses though JNI, reflection, and Unsafe, so that when a non-null referent object is read it is also logged in an SATB buffer.
      Reviewed-by: kvn, iveresov, never, tonyp, dholmes
      6f87c7dd
  7. 06 4月, 2011 1 次提交
  8. 23 3月, 2011 1 次提交
  9. 18 3月, 2011 1 次提交
  10. 15 3月, 2011 1 次提交
  11. 11 3月, 2011 1 次提交
  12. 03 3月, 2011 1 次提交
    • B
      7023747: G1: too strict assert in... · f734707b
      brutisso 提交于
      7023747: G1: too strict assert in RefineRecordRefsIntoCSCardTableEntryClosure::do_card_ptr in g1RemSet.cpp
      Summary: Made sure that the assert looks at ParallelGCThreads.
      Reviewed-by: stefank, tonyp, jwilhelm, johnc
      f734707b
  13. 04 3月, 2011 1 次提交
  14. 05 3月, 2011 1 次提交
  15. 02 3月, 2011 1 次提交
    • I
      6627983: G1: Bad oop deference during marking · b9091f37
      iveresov 提交于
      Summary: Bulk zeroing reduction didn't work with G1, because arraycopy would call pre-barriers on uninitialized oops. The solution is to have version of arraycopy stubs that don't have pre-barriers. Also refactored arraycopy stubs generation on SPARC to be more readable and reduced the number of stubs necessary in some cases.
      Reviewed-by: jrose, kvn, never
      b9091f37
  16. 01 3月, 2011 1 次提交
    • J
      7022200: G1: optimized build broken · 34dac2c7
      johnc 提交于
      Summary: Make the G1 specific version of is_in_closed_subset() available in all builds.
      Reviewed-by: tonyp, jcoomes
      34dac2c7
  17. 19 2月, 2011 1 次提交
  18. 05 4月, 2011 2 次提交
  19. 30 3月, 2011 2 次提交
  20. 29 3月, 2011 1 次提交
    • J
      7026932: G1: No need to abort VM when card count cache expansion fails · 65085e41
      johnc 提交于
      Summary: Manage allocation/freeing of the card cache counts and epochs arrays directly so that an allocation failure while attempting to expand these arrays does not abort the JVM. Failure to expand these arrays is not fatal.
      Reviewed-by: iveresov, tonyp
      65085e41
  21. 23 3月, 2011 1 次提交
    • B
      6948149: G1: Imbalance in termination times · 8c38c653
      brutisso 提交于
      Summary: Changed default value of WorkStealingYieldsBeforeSleep from 1000 to 5000. Added more information to G1 pause logging.
      Reviewed-by: jwilhelm, tonyp, jmasa
      8c38c653
  22. 09 2月, 2011 1 次提交
  23. 08 2月, 2011 2 次提交
    • S
      7014851: Remove unused parallel compaction code · 2b4c6b63
      stefank 提交于
      Summary: Removed.
      Reviewed-by: jcoomes, brutisso
      2b4c6b63
    • 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
  24. 04 2月, 2011 2 次提交
  25. 03 2月, 2011 1 次提交
    • J
      6923430: G1: assert(res != 0,"This should have worked.") · a2031db9
      johnc 提交于
      7007446: G1: expand the heap with a single step, not one region at a time
      Summary: Changed G1CollectedHeap::expand() to expand the committed space by calling VirtualSpace::expand_by() once rather than for every region in the expansion amount. This allows the success or failure of the expansion to be determined before creating any heap regions. Introduced a develop flag G1ExitOnExpansionFailure (false by default) that, when true, will exit the VM if the expansion of the committed space fails. Finally G1CollectedHeap::expand() returns a status back to it's caller so that the caller knows whether to attempt the allocation.
      Reviewed-by: brutisso, tonyp
      a2031db9
  26. 02 2月, 2011 1 次提交
  27. 01 2月, 2011 1 次提交
    • T
      7014679: G1: deadlock during concurrent cleanup · a54411a3
      tonyp 提交于
      Summary: There's a potential deadlock between the concurrent cleanup thread and the GC workers that are trying to allocate and waiting for more free regions to be made available.
      Reviewed-by: iveresov, jcoomes
      a54411a3
  28. 28 1月, 2011 1 次提交
  29. 26 1月, 2011 2 次提交
    • T
      7014261: G1: RSet-related failures · 1498a56a
      tonyp 提交于
      Summary: A race between the concurrent cleanup thread and the VM thread while it is processing the "expanded sparse table list" causes both threads to try to free the same sparse table entry and either causes one of the threads to fail or leaves the entry in an inconsistent state. The solution is purge all entries on the expanded list that correspond go regions that are being cleaned up.
      Reviewed-by: brutisso, johnc
      1498a56a
    • J
      6608385: G1: need to support parallel reference processing · 477822c8
      johnc 提交于
      Summary: Implement support for ParallelRefProcEnabled in the reference processing that takes place at the end of G1 concurrent marking.
      Reviewed-by: tonyp, ysr
      477822c8
  30. 22 1月, 2011 1 次提交
    • T
      7013718: G1: small fixes for two assert/guarantee failures · d2d605ca
      tonyp 提交于
      Summary: Two small fixes to deal with a guarantee failure (the marking thread should join the SuspendibleThreadSet before calling a method that does pause prediction work so that said method is never called during a pause) and an assert failure (an assert is too strong).
      Reviewed-by: iveresov, johnc
      d2d605ca
  31. 20 1月, 2011 2 次提交
    • T
      6977804: G1: remove the zero-filling thread · 0ed267ef
      tonyp 提交于
      Summary: This changeset removes the zero-filling thread from G1 and collapses the two free region lists we had before (the "free" and "unclean" lists) into one. The new free list uses the new heap region sets / lists abstractions that we'll ultimately use it to keep track of all regions in the heap. A heap region set was also introduced for the humongous regions. Finally, this change increases the concurrency between the thread that completes freeing regions (after a cleanup pause) and the rest of the system (before we'd have to wait for said thread to complete before allocating a new region). The changest also includes a lot of refactoring and code simplification.
      Reviewed-by: jcoomes, johnc
      0ed267ef
    • K
      7012505: BreakpointWithFullGC.sh fails with Internal Error (src/share/vm/oops/methodOop.cpp:220) · 0457abfb
      kamg 提交于
      Summary: Rebuild breakpoint cache at gc_epilogue instead of during oops_do
      Reviewed-by: dcubed, ysr, coleenp
      0457abfb
  32. 19 1月, 2011 1 次提交
    • T
      7011379: G1: overly long concurrent marking cycles · c1c48661
      tonyp 提交于
      Summary: This changeset introduces filtering of SATB buffers at the point when they are about to be enqueued. If this filtering clears enough entries on each buffer, the buffer can then be re-used and not enqueued. This cuts down the number of SATB buffers that need to be processed by the concurrent marking threads.
      Reviewed-by: johnc, ysr
      c1c48661
  33. 14 1月, 2011 1 次提交