641 Commits

Author SHA1 Message Date
Stefan Johansson
3c1ab21ffa 8165949: Serial and ConcMarkSweep do not unload strings when class unloading is disabled
Reviewed-by: mgerdin, tschatzl, stefank
2016-10-05 13:35:57 +02:00
Jesper Wilhelmsson
9ab6c1b05c 8166276: Refactor gen_process_roots to allow simpler fix for 8165949
Co-authored-by: Stefan Johansson <stefan.johansson@oracle.com>
Reviewed-by: mgerdin, stefank
2015-10-21 15:18:30 +02:00
Erik Österlund
e6c9f4d18d 8165857: CMS _overflow_list is missing volatile specifiers
Change _overflow_list from "oop" to "oopDesc* volatile", both CMS and ParNew.

Reviewed-by: kbarrett, tschatzl
2016-09-27 16:43:59 -04:00
Kirill Zhaldybin
7487c57399 8159818: Convert IHOP_test to GTest
Reviewed-by: tschatzl, iignatyev
2016-09-26 17:49:01 +03:00
Kim Barrett
7a9ceeb8ef 8166663: Simplify oops_on_card_seq_iterate_careful
Remove unnecessary parameter, change return value.

Reviewed-by: tschatzl, mgerdin
2016-09-26 14:38:35 -04:00
Erik Österlund
1d00efa1c6 8165858: heapRegionManager is missing volatile specifier for _claims
Added volatile specifier.

Reviewed-by: kbarrett, tschatzl
2016-09-24 16:02:29 -04:00
Joseph Provino
6e3a0f41c1 Merge 2016-09-20 22:38:26 +00:00
Joseph Provino
e11ceb441a Merge 2016-09-20 20:45:35 +00:00
Erik Österlund
f6f5dfdb4a 8033552: Fix missing missing volatile specifiers in CAS operations in GC code
Add missing volatile specifiers.

Reviewed-by: kbarrett, tschatzl
2016-09-20 15:42:17 -04:00
Joseph Provino
0086595519 8164482: [REDO] G1 does not implement millis_since_last_gc which is needed by RMI GC
G1 does not return a correct value for the CollectedHeap::millis_since_last_gc()

Reviewed-by: tschatzl, kbarrett
2016-09-20 10:27:51 -04:00
Erik Österlund
6085d008cc 8165860: WorkGroup classes are missing volatile specifiers for lock-free code
Reviewed-by: mgerdin, tschatzl
2016-09-20 11:41:43 +02:00
Kim Barrett
9b7c58376f 8166228: Remove unused HeapRegion::object_iterate_mem_careful()
Removed unused function.

Reviewed-by: mgerdin, tschatzl
2016-09-19 19:59:28 -04:00
Thomas Schatzl
c354a62301 8166207: Use of Copy::conjoint_oops_atomic in global mark stack causes crashes on arm64
Use Copy::conjoint_memory_atomic() instead.

Reviewed-by: kbarrett
2016-09-19 22:55:26 +02:00
Kim Barrett
8617484bde 8166229: Eliminate ParNew's use of klass_or_null()
Use list_ptr_from_klass instead of klass_or_null.

Reviewed-by: mgerdin, jmasa
2016-09-19 13:12:26 -04:00
Thomas Schatzl
317f1aa044 8157952: Parallelize Memory Pretouch
Use multiple threads to pretouch memory using -XX:+AlwaysPreTouch to use more memory bandwidth

Reviewed-by: jmasa, sangheki
2016-09-16 11:33:47 +02:00
Kim Barrett
b77d0de3d9 8165808: Add release barriers when allocating objects with concurrent collection
Add release_set_klass, use in slow-path allocators.

Reviewed-by: jmasa, dholmes
2016-09-15 12:10:43 -04:00
Thomas Schatzl
94bbcbd378 8159422: Very high Concurrent Mark mark stack contention
Decrease contention on mark stack by splitting locks, and minimizing the amount of time these locks are held. Improve mark stack management.

Reviewed-by: kbarrett, mgerdin, eosterlund
2016-09-15 16:44:19 +02:00
Jon Masamitsu
cc223fcb91 8161029: GPL header missing comma after year
Reviewed-by: kbarrett, ehelin
2016-09-13 16:18:44 -07:00
Thomas Schatzl
c719b0171c 8164948: Initializing stores of HeapRegions are not ordered with regards to their use in G1ConcurrentMark
Add a storestore barrier before publishing newly initialized HeapRegion instances, and place a loadload barrier before use of members.

Reviewed-by: sjohanss, sangheki
2016-09-13 11:32:45 +02:00
Stefan Johansson
f6a7898995 8114823: G1 doesn't honor request to disable class unloading
Reviewed-by: tschatzl, mgerdin
2016-09-12 16:34:36 +02:00
Erik Helin
be6cc69504 8165455: Tracing events for G1 have incorrect metadata
Reviewed-by: egahlin, tschatzl
2016-09-08 12:30:38 +02:00
Thomas Schatzl
1075dcd335 8165313: Inserting freed regions during Free Collection Set serial phase takes very long on huge heaps
Sort the collection set in ascending order so that the optimization when adding free regions can be exploited.

Reviewed-by: sjohanss, mgerdin
2016-09-12 09:34:51 +02:00
Thomas Schatzl
c271d83599 8165292: The gc+task logging is repeated a lot, decreasing the usefulness of -Xlog:gc*=info
Separate number of workers used debugging information from adaptive worker sizing log messages.

Reviewed-by: ehelin, sjohanss, jmasa
2016-09-07 09:20:10 +02:00
Thomas Schatzl
e4f4b40488 8164936: G1 age table printout contains contents from previous GC
Split tenuring threshold update and printing into two separate parts so that they can be used independently.

Reviewed-by: jmasa, sangheki
2016-09-02 09:49:10 +02:00
Kirill Zhaldybin
87d30c0c7d 8164039: Convert test_memset_with_concurrent_readers to GTest
Reviewed-by: iignatyev, kbarrett
2016-09-01 20:46:40 +03:00
Kirill Zhaldybin
d871b35f40 8164230: Convert TestCodeCacheRemSet_test to GTest
Reviewed-by: mgerdin, dfazunen
2016-08-29 20:15:12 +03:00
Kirill Zhaldybin
d65aa31fd5 8164028: Convert TestPredictions_test to GTest
Reviewed-by: jwilhelm, dfazunen, ehelin
2016-08-22 16:43:56 +03:00
Kirill Zhaldybin
fe2f936875 8163860: Convert TestOldFreeSpaceCalculation_test to GTest
Reviewed-by: iignatyev, dfazunen
2016-08-15 13:18:35 +03:00
Kim Barrett
66706edf15 8156500: Move Reference pending list into VM to prevent deadlocks
Move reference pending list and locking into VM

Co-authored-by: Per Liden <per.liden@oracle.com>
Reviewed-by: coleenp, dholmes, dcubed, mchung, plevart
2016-08-30 23:48:16 -04:00
Thomas Schatzl
5258f6573c 8155917: Memory access in free regions during G1 full gc causes regressions in SPECjvm2008 scimark.fft,lu,sor,sparse with 9+116 on Linux-x64
Do not unnecessarily touch the memory of free regions during the compaction phase in G1 full gc causing some OSes to allocate physical memory for them, decreasing performance in some situations.

Reviewed-by: mgerdin, jmasa
2016-08-30 09:17:49 +02:00
Alejandro Murillo
7b50aee93b Merge 2016-08-26 10:02:47 -07:00
Erik Gahlin
c98e599afa 8164523: Clean up metadata for event based tracing
Reviewed-by: mlarsson, mgronlun
2016-08-23 19:21:48 +02:00
Jesper Wilhelmsson
4fc1987255 8164124: [BACKOUT] G1 does not implement millis_since_last_gc which is needed by RMI GC
Reviewed-by: jprovino
2016-08-19 17:19:47 +02:00
Joseph Provino
08bdecf0c4 8071770: G1 does not implement millis_since_last_gc which is needed by RMI GC
G1 does not return a correct value for the CollectedHeap::millis_since_last_gc

Reviewed-by: jmasa, tschatzl
2016-08-02 16:39:33 -04:00
David Holmes
5f1f4489ac 8157907: Incorrect inclusion of atomic.hpp instead of atomic.inline.hpp
Remove atomic.inline.hpp and move the contents back into atomic.hpp

Reviewed-by: stefank, pliden, simonis
2016-08-21 20:56:37 -04:00
Jon Masamitsu
d618ceab2e 8159073: : Error handling incomplete when creating GC threads lazily
Reviewed-by: drwhite, tschatzl, sangheki
2016-06-08 14:11:51 -07:00
Thomas Schatzl
2313844e20 8161993: G1 crashes if active_processor_count changes during startup
Use the initial active processor count for memory initialization instead of the current active one.

Reviewed-by: dholmes, mgerdin
2016-07-26 11:04:20 +02:00
Goetz Lindenmaier
da3339948e 8161258: Simplify including platform files
Include patform files with macros cpu_header() etc. Do various cleanups of macro usages. Remove _64/_32 from adlc generated files and platform .hpp files. Merge stubRoutines_x86*.hpp. Remove empty mutex_<os>* files.

Reviewed-by: dholmes, coleenp, kbarrett
2016-07-13 12:23:05 +02:00
Erik Helin
b630a3ff47 8159464: DumpHeap.java hits assert in G1 code
Reviewed-by: mgerdin, tschatzl
2016-07-21 14:55:54 +02:00
Jon Masamitsu
631036a07b 8155263: DisableStartThread should not be applied to GC worker threads
Reviewed-by: tschatzl, sangheki
2016-07-06 13:23:10 -07:00
Thomas Schatzl
5075c7b9a0 8157459: G1 IHOP JFR event attribute with incorrect content type
Use PERCENTAGE instead of BYTES64 data type for the affected attributes.

Reviewed-by: ehelin, sangheki
2016-07-19 09:30:30 +02:00
Thomas Schatzl
ada5ab192f 8034842: Parallelize the Free CSet phase in G1
Reviewed-by: jmasa, ehelin
2016-07-19 10:31:41 +02:00
Thomas Schatzl
1244572841 8160897: Concurrent mark mark stack memory allocation leaks memory
Fix and clean up concurrent mark mark stack memory allocation.

Reviewed-by: jmasa, sangheki
2016-07-15 13:33:44 +02:00
Jesper Wilhelmsson
f2490e9194 8024137: Flags should be set using the proper macro
Reviewed-by: sangheki, drwhite, jmasa
2016-06-21 19:37:30 +02:00
Jesper Wilhelmsson
464bfe497d 8048093: Explicitly setting := vs = in the -XX:+PrintFlagsFinal output
Reviewed-by: kvn, gziemski
2016-06-21 19:35:39 +02:00
Jon Masamitsu
8821cffac1 8157240: GC task trace logging is incomprehensible
Reviewed-by: tschatzl, redestad
2016-05-19 13:59:50 -07:00
Thomas Schatzl
7fd90042ca 8159978: Use an array to store the collection set regions instead of linking through regions
Fix a potential problem with memory visibility in the sampling thread in the collection set by changing the way we store the collection set.

Reviewed-by: ehelin, jmasa
2016-07-06 11:22:55 +02:00
Derek White
2e1b011569 8158946: btree009 fails with assert(s > 0) failed: Bad size calculated
Set oop_size before setting _klass

Reviewed-by: coleenp, dholmes, kbarrett, tschatzl
2016-07-05 15:34:06 -04:00
Per Lidén
3ad9aa0f10 8159974: G1 String deduplication logging not aligned with the rest of G1
Reviewed-by: stefank, tschatzl
2016-07-04 11:27:11 +02:00
Yasumasa Suenaga
8ea7496925 8160356: invalid suffix on literal warning is occurred with GCC 6
Add whitespace separation

Reviewed-by: kbarrett, kvn
2016-06-30 19:16:14 -04:00