iveresov [Fri, 21 Jan 2011 00:01:41 -0800] rev 7927
7013812: C1: deopt blob too far from patching stub
Summary: Use long jumps to get from patching stubs to deopt blob
Reviewed-by: kvn, never
trims [Thu, 20 Jan 2011 18:24:04 -0800] rev 7926
Merge
trims [Thu, 20 Jan 2011 17:53:38 -0800] rev 7925
Merge
johnc [Thu, 20 Jan 2011 13:57:12 -0800] rev 7924
Merge
tonyp [Wed, 19 Jan 2011 19:30:42 -0500] rev 7923
6977804: G1: remove the zero-filling thread
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
johnc [Wed, 19 Jan 2011 13:04:37 -0800] rev 7922
Merge
johnc [Wed, 19 Jan 2011 13:01:11 -0800] rev 7921
7012642: G1: JumbleGC002 test aborts with segmentation violation due to uncaught stack overflow
Summary: With recent G1 allocation path changes, the value of StackShadowPages in fast debug builds of the JVM, is no longer large enough to prevent the JVM C++ code from touching the stack guard pages. Increase the value of StackShadowPages to a suitable value.
Reviewed-by: ysr, tonyp, coleenp
tonyp [Wed, 19 Jan 2011 09:35:17 -0500] rev 7920
7011379: G1: overly long concurrent marking cycles
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
dcubed [Wed, 19 Jan 2011 19:24:34 -0800] rev 7919
Merge
kamg [Wed, 19 Jan 2011 13:51:53 -0800] rev 7918
7012505: BreakpointWithFullGC.sh fails with Internal Error (src/share/vm/oops/methodOop.cpp:220)
Summary: Rebuild breakpoint cache at gc_epilogue instead of during oops_do
Reviewed-by: dcubed, ysr, coleenp
never [Wed, 19 Jan 2011 08:16:45 -0800] rev 7917
7013008: 2/3 assert(method == NULL || check_method(method, bcp)) failed: bcp must point into method
Summary: The Relocator should pass a NULL methodOop when rewriting since its resource array can never contain breakpoints.
Reviewed-by: dcubed, kvn, coleenp
dcubed [Wed, 19 Jan 2011 07:41:39 -0800] rev 7916
7012493: 2/2 6849574/Test.java fails with Internal Error (src/share/vm/prims/jvmtiTagMap.cpp:3294)
Summary: Refine assertion to work before VMThread has started.
Reviewed-by: ysr, never, dholmes, acorn
dcubed [Wed, 19 Jan 2011 07:15:09 -0800] rev 7915
Merge
coleenp [Fri, 14 Jan 2011 13:47:53 -0500] rev 7914
6811367: Fix code in HeapDumper::dump_heap() to avoid buffer overrun
Summary: Check buffer size before using and use dynamic buffer sizes for subsequent calls.
Reviewed-by: kamg, dholmes
never [Thu, 13 Jan 2011 22:15:41 -0800] rev 7913
4926272: methodOopDesc::method_from_bcp is unsafe
Reviewed-by: coleenp, jrose, kvn, dcubed
iveresov [Tue, 18 Jan 2011 18:00:06 -0800] rev 7912
7012766: assert(false) failed: DEBUG MESSAGE in MacroAssembler::debug32
Summary: Interpreter expects to see methodOop in rbx on method entry, which needs to be restored after call to profile_method.
Reviewed-by: kvn, never
kvn [Tue, 18 Jan 2011 17:10:03 -0800] rev 7911
7012965: Fix failed on sparc for 7009756: volatile variables could be broken throw reflection API
Summary: Use LDX/STX on v9 and LDD/STD on v8 sparc for volatile long moves.
Reviewed-by: never
minqi [Thu, 07 Oct 2010 13:49:40 -0700] rev 7910
6966589: hs16-b08 causes java.lang.StackOverflowError
Reviewed-by: mchung, dholmes, chrisphi
trims [Thu, 13 Jan 2011 22:54:23 -0800] rev 7909
Merge
johnc [Thu, 13 Jan 2011 17:19:21 -0800] rev 7908
Merge
ysr [Thu, 13 Jan 2011 11:33:56 -0800] rev 7907
7011940: iCMS: SIGSEGV in SweepClosure::do_already_free_chunk(FreeChunk*)+0x360
Summary: Revert a (relaxed version of the) bounds-check that was incorrectly removed in the fix for 7008136.
Reviewed-by: jmasa, johnc
brutisso [Thu, 13 Jan 2011 04:43:30 -0800] rev 7906
6941122: G1: UseLargePages does not work with G1 garbage collector
Summary: Pass the value of UseLargePages instead of false as the "large" parameter when reserving the G1 heap.
Reviewed-by: tonyp, johnc, phh
tonyp [Wed, 12 Jan 2011 16:34:25 -0500] rev 7905
6994297: G1: do first-level slow-path allocations with a CAS
Summary: First attempt to allocate out the current alloc region using a CAS instead of taking the Heap_lock (first level of G1's slow allocation path). Only if that fails and it's necessary to replace the current alloc region take the Heap_lock (that's the second level of G1's slow allocation path).
Reviewed-by: johnc, brutisso, ysr
tonyp [Wed, 12 Jan 2011 13:06:00 -0500] rev 7904
7007068: G1: refine the BOT during evac failure handling
Summary: During evacuation failure handling we refine the BOT to reflect the location of all the objects in the regions we scan. The changeset includes some minor cleanup: a) non-product print_on() method on the G1 BOT class, b) added more complete BOT verification during heap / region verification, c) slight modification to the BOT set up for humongous regions to be more consistent with the BOT set up during evac failure handling, and d) removed a couple of unused methods.
Reviewed-by: johnc, ysr
ysr [Thu, 06 Jan 2011 23:50:02 -0800] rev 7903
7008136: CMS: assert((HeapWord*)nextChunk <= _limit) failed: sweep invariant
Summary: The recorded _sweep_limit may not necessarily remain a block boundary as the old generation expands during a concurrent cycle. Terminal actions inside the sweep closure need to be aware of this as they cross over the limit.
Reviewed-by: johnc, minqi
dcubed [Thu, 13 Jan 2011 08:32:15 -0800] rev 7902
Merge
coleenp [Wed, 12 Jan 2011 13:59:18 -0800] rev 7901
7009828: Fix for 6938627 breaks visualvm monitoring when -Djava.io.tmpdir is defined
Summary: Change get_temp_directory() back to /tmp and %TEMP% like it always was and where the tools expect it to be.
Reviewed-by: phh, dcubed, kamg, alanb
kevinw [Wed, 12 Jan 2011 15:44:16 +0000] rev 7900
6994753: Implement optional hook to a Java method at VM startup.
Reviewed-by: mchung, acorn
phh [Tue, 11 Jan 2011 17:50:26 -0500] rev 7899
Merge
phh [Tue, 11 Jan 2011 17:33:21 -0500] rev 7898
7011463: Sparc MacroAssembler::incr_allocated_bytes() needs a RegisterOrConstant argument
Summary: Replaced incr_allocated_bytes() formals var_size_in_bytes and con_size_in_bytes with a single RegisterOrConstant formal.
Reviewed-by: twisti, jcoomes
kamg [Tue, 11 Jan 2011 10:06:00 -0500] rev 7897
6814943: getcpool001 catches more than one JvmtiThreadState problem
Summary: Mark field volatile, use membars, and change access order to close race
Reviewed-by: dcubed, dholmes
kamg [Mon, 10 Jan 2011 17:14:53 -0500] rev 7896
6458402: 3 jvmti tests fail with CMS and +ExplicitGCInvokesConcurrent
Summary: Make JvmtiGCMark safe to run non-safepoint and instrument CMS
Reviewed-by: ysr, dcubed