666 Commits

Author SHA1 Message Date
Y. Srinivas Ramakrishna
961c251005 8177963: Parallel GC fails fast when per-thread task log overflows
Instead of exiting the VM when per-thread task log overflows, print warnings once and ignore any further log addition attempt.

Reviewed-by: ysr, kbarrett, sangheki
2017-04-07 10:45:26 +02:00
Thomas Schatzl
6fb4d7356b 8173229: Wrong assert whether all remembered set entries have been iterated over in presence of coarsenings
Remove asserts as they are almost useless.

Reviewed-by: mgerdin, ehelin
2017-01-27 13:12:53 +01:00
Jamsheed Mohammed C M
197ce5bafa 8166002: Emulate client build on platforms with reduced virtual address space
The default VM ergonomics on Windows/x86 (32-bit) are changed to client like.

Reviewed-by: kvn, iveresov
2017-01-17 21:38:07 -08:00
Arno Zeller
43b7b1bd77 8171924: Use SIZE_FORMAT to print size_t values
Reviewed-by: dholmes, tschatzl, coleenp, goetz
2016-12-22 16:51:25 +01:00
Bharadwaj Yadavalli
2841c5eb2b 8171008: Integrate AOT compiler into JDK
Co-authored-by: Christian Thalinger <cthalinger@twitter.com>
Co-authored-by: Dean Long <dean.long@oracle.com>
Co-authored-by: Dmitrij Pochepko <dmitrij.pochepko@oracle.com>
Co-authored-by: Dmitry Chuyko <dmitry.chuyko@oracle.com>
Co-authored-by: Doug Simon <doug.simon@oracle.com>
Co-authored-by: Eric Caspole <eric.caspole@oracle.com>
Co-authored-by: Igor Ignatyev <igor.ignatyev@oracle.com>
Co-authored-by: Igor Veresov <igor.veresov@oracle.com>
Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Morris Meyer <morris.meyer@oracle.com>
Co-authored-by: Niclas Adlertz <niclas.adlertz@oracle.com>
Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Reviewed-by: erikj, mchung, psandoz, coleenp, iklam, stefank, simonis
2016-12-11 19:07:04 -08:00
Kirill Zhaldybin
8bf0437430 8170468: Convert ParallelCompact_test to GTest
Reviewed-by: dfazunen, iignatyev
2016-12-03 12:48:22 +03:00
Kirill Zhaldybin
8d6d1e4cda 8170490: Convert TestBufferingOopClosure_test to GTest
Reviewed-by: dfazunen, iignatyev
2016-12-01 12:09:02 +03:00
Gunter Haug
78e6980e1a 8170409: CMS: Crash in CardTableModRefBSForCTRS::process_chunk_boundaries
Reviewed-by: simonis, tschatzl, mgerdin, dlong
2016-12-02 11:07:27 +01:00
Leonid Mesnik
9a28eb0745 8166898: G1SATBCardTableLoggingModRefBS::invalidate() incorrect with whole_heap == true
Reviewed-by: tschatzl, kbarrett
2016-11-24 16:48:22 +03:00
Thomas Schatzl
06bd79afed 8057003: Large reference arrays cause extremely long synchronization times
Slice large object arrays into parts so that the synchronization of marking threads with an STW pause request does not take long.

Reviewed-by: ehelin, pliden
2016-11-24 11:27:57 +01:00
Thomas Schatzl
557d68a510 8169703: G1 crashes with guarantee(pretouch_gang != NULL) failed: No pretouch gang specified
Allow use of AlwaysPreTouch without passing a WorkGang.

Reviewed-by: kbarrett, dfazunen, ddmitriev
2016-11-24 10:05:47 +01:00
Kirill Zhaldybin
9439c78ffa 8168492: Convert CollectedHeap_test to GTest
Reviewed-by: iignatyev, tschatzl
2016-11-23 12:01:57 +03:00
Kim Barrett
358f09e305 8166811: Missing memory fences between memory allocation and refinement
Refactored to have needed barrier

Reviewed-by: tschatzl, ehelin
2016-11-22 20:50:31 -05:00
Kim Barrett
213906ee83 8166607: G1 needs klass_or_null_acquire
Use acquire where needed, split refinment humongous and non to simplify.

Reviewed-by: tschatzl, ehelin
2016-11-22 20:24:47 -05:00
Kim Barrett
7d9d3aa1a0 8169423: Infinite loop in G1's ConcurrentMarkThread
Also terminate loop if has_aborted flag is set.

Reviewed-by: tschatzl, sjohanss
2016-11-15 19:39:51 -05:00
Erik Helin
d19575bfac 8167679: G1 phase logging is messy
Reviewed-by: sjohanss, tschatzl
2016-11-07 10:38:42 +01:00
Erik Helin
db9932fb37 8168904: Initialize and reset G1 phase times to zero
Reviewed-by: sjohanss, jprovino
2016-10-28 15:50:09 +02:00
Boris Molodenkov
ebdc27f789 8165451: Convert WorkerDataArray_test to GTest
Reviewed-by: jwilhelm
2016-10-26 17:29:47 +03:00
Joseph Provino
af75e7389a 8160055: Misplaced call to ClassLoaderDataGraph::clear_claimed_marks during initial mark
The call to ClassLoaderDataGraph::clear_claimed_marks() during initial mark in g1CollectedHeap.cpp:4420 is misplaced.

Reviewed-by: tschatzl, kbarrett
2016-10-24 10:10:30 -04:00
Kim Barrett
b82dbd43b5 8166862: CMS needs klass_or_null_acquire
Change CMS non-assert uses of klass_or_null to klass_or_null_acquire.

Reviewed-by: tschatzl, mgerdin
2016-10-21 22:26:51 -04:00
Kirill Zhaldybin
5eff90fe32 8159817: Convert FreeRegionList_test to GTest
Reviewed-by: kbarrett
2016-10-20 23:09:03 +03:00
Kirill Zhaldybin
d8c2eae5b3 8166910: Convert TestNewSize_test to GTest
8166911: Convert TestOldSize_test to GTest

Reviewed-by: jwilhelm
2016-10-20 10:51:54 +03:00
Dmitry Fazunenko
23d0bfc849 Merge 2016-10-18 16:02:14 +00:00
Dmitry Fazunenko
d530964acc 8165621: Convert TestG1BiasedArray_test to GTest
Reviewed-by: jwilhelm, kzhaldyb
2016-10-18 19:26:07 +04:00
Erik Helin
f2c1ba20ec 8167190: Remove confusing timestamps from the gc log
Reviewed-by: sjohanss, pliden
2016-10-05 16:00:10 +02:00
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