2374 Commits

Author SHA1 Message Date
John Cuthbertson
43a30ad483 7129271: G1: Interference from multiple threads in PrintGC/PrintGCDetails output
During an initial mark pause, signal the Concurrent Mark thread after the pause output from PrintGC/PrintGCDetails is complete.

Reviewed-by: tonyp, brutisso
2012-01-17 10:21:43 -08:00
Antonios Printezis
c9eb103b7f 7097586: G1: improve the per-space output when using jmap -heap
Extend the jmap -heap output for G1 to include some more G1-specific information.

Reviewed-by: brutisso, johnc, poonam
2012-01-18 10:30:12 -05:00
Bengt Rutisson
c11ba93098 6976060: G1: humongous object allocations should initiate marking cycles when necessary
Reviewed-by: tonyp, johnc
2012-01-16 22:10:05 +01:00
Bengt Rutisson
af0211c200 7130334: G1: Change comments and error messages that refer to CMS in g1/concurrentMark.cpp/hpp
Removed references to CMS in the concurrentMark.cpp/hpp files.

Reviewed-by: tonyp, jmasa, johnc
2012-01-16 11:21:21 +01:00
John Cuthbertson
dac656c955 7121547: G1: High number mispredicted branches while iterating over the marking bitmap
There is a high number of mispredicted branches associated with calling BitMap::iteratate() from within CMBitMapRO::iterate(). Implement a version of CMBitMapRO::iterate() directly using inline-able routines.

Reviewed-by: tonyp, iveresov
2012-01-13 13:27:48 -08:00
Jiangli Zhou
6bc84f7865 7129240: backout fix for 7102776 until 7128770 is resolved
Reviewed-by: phh, bobv, coleenp, dcubed
2012-01-11 19:54:34 -08:00
Paul Hohensee
8efd785f67 Merge 2012-01-11 17:58:26 -05:00
Markus Gronlund
007126d010 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
Added a nop tracing infrastructure, JFR makefile changes and other infrastructure used only by JFR.

Reviewed-by: acorn, sspitsyn
2012-01-11 17:34:02 -05:00
Vladimir Kozlov
791afc42da 7128352: assert(obj_node == obj) failed
Compare uncasted object nodes.

Reviewed-by: never
2012-01-10 18:05:38 -08:00
Antonios Printezis
1d3b26e52b 6888336: G1: avoid explicitly marking and pushing objects in survivor spaces
This change simplifies the interaction between GC and concurrent marking. By disabling survivor spaces during the initial-mark pause we don't need to propagate marks of objects we copy during each GC (since we never need to copy an explicitly marked object).

Reviewed-by: johnc, brutisso
2012-01-10 18:58:13 -05:00
Keith McGuigan
5c89631aef Merge 2012-01-10 15:47:19 -05:00
Bengt Rutisson
2bf3afe882 7128532: G1: Change default value of G1DefaultMaxNewGenPercent to 80
Reviewed-by: tonyp, jmasa
2012-01-10 20:02:41 +01:00
Antonios Printezis
30bfc8f549 7125281: G1: heap expansion code is replicated
Reviewed-by: brutisso, johnc
2012-01-09 23:50:41 -05:00
Frederic Parain
849571d5b3 7120511: Add diagnostic commands
Reviewed-by: acorn, phh, dcubed, sspitsyn
2012-01-09 10:27:24 +01:00
Vladimir Kozlov
94927c382b 7125896: Eliminate nested locks
Nested locks elimination done before lock nodes expansion by looking for outer locks of the same object.

Reviewed-by: never, twisti
2012-01-07 13:26:43 -08:00
Vladimir Kozlov
f99fb50071 7110824: ctw/jarfiles/GUI3rdParty_jar/ob_mask_DateField crashes VM
Change yank_if_dead() to recursive method to remove all dead inputs.

Reviewed-by: never
2012-01-07 10:39:23 -08:00
Antonios Printezis
90cdae9775 7121623: G1: always be able to reliably calculate the length of a forwarded chunked array
Store the "next chunk start index" in the length field of the to-space object, instead of the from-space object, so that we can always reliably read the size of all from-space objects.

Reviewed-by: johnc, ysr, jmasa
2012-01-07 00:43:59 -05:00
Vladimir Kozlov
b93ca70b9b Merge 2012-01-06 20:09:20 -08:00
Daniel D. Daugherty
74c45d049e Merge 2012-01-06 16:18:29 -08:00
Jon Masamitsu
156b0a12aa Merge 2012-01-05 21:02:05 -08:00
Igor Veresov
72f3f7db44 7119294: Two command line options cause JVM to crash
Setup thread register in MacroAssembler::incr_allocated_bytes() on x64

Reviewed-by: kvn
2012-01-05 17:25:58 -08:00
Paul Hohensee
66388c03c9 Merge 2012-01-05 17:16:13 -05:00
Paul Hohensee
2cd87d4e3a 7126480: Make JVM start time in milliseconds since the Java epoch available
Expose existing Management::_begin_vm_creation_time via new accessor Management::begin_vm_creation_time().

Reviewed-by: acorn, dcubed
2012-01-05 17:14:52 -05:00
Frederic Parain
1de4ad84a2 7125594: C-heap growth issue in ThreadService::find_deadlocks_at_safepoint
Reviewed-by: sspitsyn, dcubed, mchung, dholmes
2012-01-05 07:26:44 -08:00
Daniel D. Daugherty
743a35d2dc 7127032: fix for 7122253 adds a JvmtiThreadState earlier than necessary
Use JavaThread::jvmti_thread_state() instead of JvmtiThreadState::state_for().

Reviewed-by: coleenp, poonam, acorn
2012-01-05 06:24:52 -08:00
Jiangli Zhou
e6157688b4 Merge 2012-01-04 12:36:07 -05:00
Jon Masamitsu
95b987c3ac Merge 2012-01-04 07:56:13 -08:00
Erik Gahlin
5782866b28 7126185: Clean up lasterror handling, add os::get_last_error()
Add os::get_last_error(), replace getLastErrorString() by os::lasterror() in os_windows.cpp.

Reviewed-by: kamg, dholmes
2012-01-03 15:11:31 -05:00
Jon Masamitsu
d07885c3c6 Merge 2012-01-03 10:22:19 -08:00
Stefan Karlsson
e0ae7fac7c 7125503: Compiling collectedHeap.cpp fails with -Werror=int-to-pointer-cast with g++ 4.6.1
Used uintptr_t and void* for all the casts and checks in test_is_in.

Reviewed-by: tonyp, jmasa
2012-01-02 10:01:46 +01:00
Karen Kinnear
c323bcdca8 7125934: Add a fast unordered timestamp capability to Hotspot on x86/x64
Add rdtsc detection and inline generation.

Reviewed-by: kamg, dholmes
2012-01-01 11:17:59 -05:00
Vladimir Kozlov
05ec1c0816 7125879: assert(proj != NULL) failed: must be found
Leave i_o attached to slow allocation call when there are no i_o users after the call.

Reviewed-by: iveresov, twisti
2011-12-30 11:43:06 -08:00
Vladimir Danushevsky
8a8eafcc47 Merge 2011-12-29 20:09:24 -05:00
Vladimir Kozlov
b6828ac542 Merge 2011-12-29 11:37:50 -08:00
Stefan Karlsson
24e4bf6a80 7125516: G1: ~ConcurrentMark() frees incorrectly
Replaced the code with a ShouldNotReachHere

Reviewed-by: tonyp, jmasa
2011-12-29 07:37:23 +01:00
Jiangli Zhou
0671e90755 7123315: instanceKlass::_static_oop_field_count and instanceKlass::_java_fields_count should be u2 type
Change instanceKlass::_static_oop_field_count and instanceKlass::_java_fields_count to u2 type.

Reviewed-by: never, bdelsart, dholmes
2011-12-28 12:15:57 -05:00
Aleksey Ignatenko
c7ec06ba8e 7124829: NUMA: memory leak on Linux with large pages
In os::free_memory() use mmap with the same attributes as for the heap space

Reviewed-by: kvn
2011-12-27 16:43:49 -08:00
Vladimir Kozlov
f96f3e5e85 7123954: Some CTW test crash with SIGSEGV
Correct Allocate expansion code to preserve i_o when only slow call is generated.

Reviewed-by: iveresov
2011-12-27 15:08:43 -08:00
Jon Masamitsu
3c164a7525 Merge 2011-12-27 12:38:49 -08:00
Vladimir Danushevsky
2b6f4a741d Merge 2011-12-26 20:36:01 -05:00
Vladimir Kozlov
6c38bc48ca 7110832: ctw/.../org_apache_avalon_composition_util_StringHelper crashes the VM
Distance is too large for one short branch in string_indexofC8().

Reviewed-by: iveresov
2011-12-23 15:24:36 -08:00
John Cuthbertson
39d61f89a2 7121496: G1: do the per-region evacuation failure handling work in parallel
Parallelize the removal of self forwarding pointers etc. by wrapping in a HeapRegion closure, which is then wrapped inside an AbstractGangTask.

Reviewed-by: tonyp, iveresov
2011-12-23 11:14:18 -08:00
Jon Masamitsu
c18293c806 Merge 2012-01-05 21:21:55 -08:00
Antonios Printezis
3c0eb44a7c 7113006: G1: excessive ergo output when an evac failure happens
Introduce a flag that is set when a heap expansion attempt during a GC fails so that we do not consantly attempt to expand the heap when it's going to fail anyway. This not only prevents the excessive ergo output (which is generated when a region allocation fails) but also avoids excessive and ultimately unsuccessful expansion attempts.

Reviewed-by: jmasa, johnc
2012-01-05 05:54:01 -05:00
Roland Westrelin
59b883333b 7123253: C1: in store check code, usage of registers may be incorrect
Fix usage of input register in assembly code for store check.

Reviewed-by: never
2011-12-23 09:36:23 +01:00
Daniel D. Daugherty
c210a09fdf 7122253: Instrumentation.retransformClasses() leaks class bytes
Change ClassFileParser::parseClassFile() to use the instanceKlass:_cached_class_file_bytes field to avoid leaking the cache.

Reviewed-by: coleenp, acorn, poonam
2011-12-22 12:50:42 -08:00
Vladimir Danushevsky
6446da199d Merge 2011-12-22 12:01:46 -05:00
Roland Westrelin
c10042bc68 7123108: C1: assert(if_state != NULL) failed: states do not match up
In CEE, ensure if and common successor state are at the same inline level

Reviewed-by: never
2011-12-22 10:55:53 +01:00
Coleen Phillimore
5232221c68 Merge 2011-12-21 18:22:14 -08:00
Thomas Wuerthinger
a4f6289b4f 7064927: retransformClasses() does not pass in LocalVariableTable of a method
Handle LVT attribute in the class file reconstitutor.

Reviewed-by: phh, coleenp
2011-12-21 16:41:15 -05:00