Tom Rodriguez
f028816786
7013008: 2/3 assert(method == NULL || check_method(method, bcp)) failed: bcp must point into method
...
The Relocator should pass a NULL methodOop when rewriting since its resource array can never contain breakpoints.
Reviewed-by: dcubed, kvn, coleenp
2011-01-19 08:16:45 -08:00
Daniel D. Daugherty
5dc9441b0a
7012493: 2/2 6849574/Test.java fails with Internal Error (src/share/vm/prims/jvmtiTagMap.cpp:3294)
...
Refine assertion to work before VMThread has started.
Reviewed-by: ysr, never, dholmes, acorn
2011-01-19 07:41:39 -08:00
Daniel D. Daugherty
3f77a1ee13
Merge
2011-01-19 07:15:09 -08:00
Antonios Printezis
05b7df20dd
7011379: G1: overly long concurrent marking cycles
...
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
2011-01-19 09:35:17 -05:00
Coleen Phillimore
f29b91c7b1
6811367: Fix code in HeapDumper::dump_heap() to avoid buffer overrun
...
Check buffer size before using and use dynamic buffer sizes for subsequent calls.
Reviewed-by: kamg, dholmes
2011-01-14 13:47:53 -05:00
Tom Rodriguez
423f587b01
4926272: methodOopDesc::method_from_bcp is unsafe
...
Reviewed-by: coleenp, jrose, kvn, dcubed
2011-01-13 22:15:41 -08:00
John Cuthbertson
a484211e0b
Merge
2011-01-13 17:19:21 -08:00
Y. Srinivas Ramakrishna
597a0cd214
7011940: iCMS: SIGSEGV in SweepClosure::do_already_free_chunk(FreeChunk*)+0x360
...
Revert a (relaxed version of the) bounds-check that was incorrectly removed in the fix for 7008136.
Reviewed-by: jmasa, johnc
2011-01-13 11:33:56 -08:00
Daniel D. Daugherty
1ce36e3055
Merge
2011-01-13 08:32:15 -08:00
Christian Thalinger
53c79c908e
Merge
2011-01-13 07:20:32 -08:00
Bengt Rutisson
2464e6b369
6941122: G1: UseLargePages does not work with G1 garbage collector
...
Pass the value of UseLargePages instead of false as the "large" parameter when reserving the G1 heap.
Reviewed-by: tonyp, johnc, phh
2011-01-13 04:43:30 -08:00
Coleen Phillimore
8d210c170e
7009828: Fix for 6938627 breaks visualvm monitoring when -Djava.io.tmpdir is defined
...
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
2011-01-12 13:59:18 -08:00
Antonios Printezis
bc1df68513
6994297: G1: do first-level slow-path allocations with a CAS
...
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
2011-01-12 16:34:25 -05:00
Antonios Printezis
5f21cb1b9b
7007068: G1: refine the BOT during evac failure handling
...
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
2011-01-12 13:06:00 -05:00
Kevin Walls
b6d2068ee2
6994753: Implement optional hook to a Java method at VM startup
...
Reviewed-by: mchung, acorn
2011-01-12 15:44:16 +00:00
Vladimir Kozlov
4912ef0e5d
7011386: race in objArrayKlass::array_klass_impl
...
Move _lower_dimension field initialization before _higher_dimension and add storestore barrier.
Reviewed-by: dholmes, iveresov, never
2011-01-11 20:26:13 -08:00
Keith McGuigan
6308eab4d5
6814943: getcpool001 catches more than one JvmtiThreadState problem
...
Mark field volatile, use membars, and change access order to close race
Reviewed-by: dcubed, dholmes
2011-01-11 10:06:00 -05:00
Igor Veresov
6a80d2126c
4930919: race condition in MDO creation at back branch locations
...
Reuse set_method_data_for_bcp() to setup mdp after MDO creation.
Reviewed-by: kvn, never
2011-01-10 18:46:29 -08:00
Keith McGuigan
ae65c6240f
6458402: 3 jvmti tests fail with CMS and +ExplicitGCInvokesConcurrent
...
Make JvmtiGCMark safe to run non-safepoint and instrument CMS
Reviewed-by: ysr, dcubed
2011-01-10 17:14:53 -05:00
Daniel D. Daugherty
6215ab50b3
Merge
2011-01-10 09:23:20 -08:00
Christian Thalinger
595eda12a4
7010913: JSR 292 ciMethodHandle does not handle MethodHandleCompiler exceptions properly
...
Reviewed-by: kvn, never
2011-01-10 03:58:07 -08:00
Christian Thalinger
b2f607fcb6
7010180: JSR 292 InvokeDynamicPrintArgs fails with: assert(_adapter == NULL) failed: init'd to NULL
...
Reviewed-by: never
2011-01-10 00:56:39 -08:00
David Holmes
5d2936a29c
7010665: Misplaced membar in C1 implementation of Unsafe.get/putXXX
...
Modify membars to match regular volatile variable handling
Reviewed-by: iveresov, kvn, never
2011-01-09 17:16:16 -05:00
Daniel D. Daugherty
0c7a73dc8c
Merge
2011-01-07 15:54:32 -08:00
Daniel D. Daugherty
d73624f279
Merge
2011-01-07 13:59:48 -08:00
Bob Vandette
cd9895a49d
Merge
2011-01-07 15:57:02 -05:00
Vladimir Kozlov
5bce844ff6
6876037: CTW fails jdk7/hotspot/src/share/vm/opto/type.cpp:2055. assert(bits,"Use TypePtr for NULL")
...
Add missing 0 value check in TypeRawPtr::add_offset().
Reviewed-by: never
2011-01-07 11:53:24 -08:00
Vladimir Kozlov
afbf71368c
7009756: volatile variables could be broken throw reflection API
...
Use Atomic::load() and Atomic::store() to access a volatile long.
Reviewed-by: iveresov, jrose, dholmes, never
2011-01-07 10:16:57 -08:00
Bob Vandette
c14e8eb4f2
7009268: guarantee(middle - slop > start) failed: need enough space to divide up
...
Codebuffer can overflow on test with large number of calls
Reviewed-by: dholmes, collins
2011-01-07 12:44:54 -05:00
Paul Hohensee
7b0134a7cb
7003271: Hotspot should track cumulative Java heap bytes allocated on a per-thread basis
...
Track allocated bytes in Thread's, update on TLAB retirement and direct allocation in Eden and tenured, add JNI methods for ThreadMXBean.
Reviewed-by: coleenp, kvn, dholmes, ysr
2011-01-07 10:42:32 -05:00
Christian Thalinger
84f5de835b
Merge
2011-01-07 03:41:07 -08:00
Y. Srinivas Ramakrishna
d921d72f20
7008136: CMS: assert((HeapWord*)nextChunk <= _limit) failed: sweep invariant
...
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
2011-01-06 23:50:02 -08:00
Coleen Phillimore
1f42cca35e
6583275: Hotspot crash in vm_perform_shutdown_actions due to uninitialized TLS during out of memory handling
...
Call get_thread_slow() in vm_perform_shutdown actions and add null check.
Reviewed-by: kvn, dholmes, jcoomes
2011-01-05 21:23:15 -05:00
Coleen Phillimore
dec384330b
6302804: Hotspot VM dies ungraceful death when C heap is exhausted in various places
...
Enhance the error reporting mechanism to help user to fix the problem rather than making it look like a VM error.
Reviewed-by: kvn, kamg
2011-01-03 14:09:11 -05:00
Igor Veresov
34b0ff28e8
7009849: C1: Incorrect frame size computation
...
Fix frame size computation
Reviewed-by: phh, kvn
2010-12-30 23:44:45 -08:00
Vladimir Kozlov
f02562388c
6928562: Assert(_no_handle_mark_nesting==0,"allocating handle inside NoHandleMark")
...
Reset NoHandleMark before going into VM.
Reviewed-by: iveresov
2010-12-30 09:36:03 -08:00
Vladimir Kozlov
28050800c0
7008325: CodeCache exhausted on sparc starting from hs20b04
...
Remove clear_scratch_buffer_blob and let init_scratch_buffer_blob free and allocate a new blob if required.
Reviewed-by: twisti
2010-12-29 10:41:43 -08:00
Vladimir Kozlov
4286ac7947
7009359: HS with -XX:+AggressiveOpts optimize new StringBuffer(null) so it does not throw NPE as expected
...
Bailout StringConcat optimization if null is passed to StringBuffer constructor.
Reviewed-by: iveresov
2010-12-28 17:34:02 -08:00
Igor Veresov
43280aa63e
7009231: C1: Incorrect CAS code for longs on SPARC 32bit
...
Fix CAS of longs on SPARC 32bit and cmove on SPARC 64bit.
Reviewed-by: kvn
2010-12-27 21:51:31 -08:00
John Cuthbertson
65e391e30e
Merge
2010-12-23 12:19:57 -08:00
Christian Thalinger
a8a98509e7
7007377: JSR 292 MethodHandlesTest.testCastFailure fails on SPARC with -Xcomp +DeoptimizeALot
...
Reviewed-by: kvn, jrose
2010-12-22 02:02:53 -08:00
Vladimir Kozlov
85dd279283
7003130: assert(iterations<CG_BUILD_ITER_LIMIT) failed: infinite EA connection graph
...
Bump CG_BUILD_ITER_LIMIT to 20
Reviewed-by: iveresov
2010-12-21 13:56:40 -08:00
Christian Thalinger
e970ef6182
7008165: Garbage in ClassFormatError message
...
When bootstrap_method_ref in BootstrapMethods attribute points to a wrong CP entry (non-MethodHandle), JVM throws ClassFormatError with a message, where method index and class file name is garbage.
Reviewed-by: iveresov
2010-12-21 04:37:30 -08:00
Antonios Printezis
2aa9ac1177
6896624: G1: hotspot:::gc and hotspot:::mem-pool-gc probes are not fired
...
Fire the gc-begin and gc-end probes for G1.
Reviewed-by: kamg, ysr, jcoomes
2010-12-19 20:57:16 -05:00
Christian Thalinger
af3cf83d37
Merge
2010-12-18 08:38:07 -08:00
Tom Rodriguez
6b9f32c382
Merge
2010-12-18 06:40:56 -08:00
Christian Thalinger
135eaf7e21
6990933: assert(sender_cb) failed: sanity in frame::sender_for_interpreter_frame
...
Reviewed-by: never
2010-12-18 01:15:01 -08:00
Y. Srinivas Ramakrishna
41bf31bff4
6807801: CMS: could save/restore fewer header words during scavenge
...
Age bits need not enter the mark-word preservation calculus; also affected, in addition to CMS, per CR synopsis above, were ParNew (but not DefNew), ParallelScavenge and G1, albeit to a lesser degree than CMS.
Reviewed-by: tonyp, johnc
2010-12-17 23:41:31 -08:00
Tom Rodriguez
ecddc15f7c
6579789: Internal error "c1_LinearScan.cpp:1429 Error: assert(false,"")" in debuggee with fastdebug VM
...
Reviewed-by: kvn, iveresov
2010-12-17 15:55:32 -08:00
John Cuthbertson
b2fa4708ad
7006113: G1: Initialize ReferenceProcessor::_is_alive_non_header field
...
Initialize the _is_alive_non_header field of G1's reference processor with an instance of the G1CMIsAliveClosure. This will stop adding reference objects with live referents to the discovered reference lists unnecessarily.
Reviewed-by: tonyp, ysr, jwilhelm, brutisso
2010-12-17 11:26:53 -08:00