Commit graph

64 commits

Author SHA1 Message Date
Yumin Qi
12dfe1c9b6 8253262: Allocate in DumpRegion is not thread safe
Reviewed-by: ccheung
2020-09-17 16:56:37 +00:00
Coleen Phillimore
35421399a4 8235765: Use of the long type should be avoided in shared code
Changed some long declarations to uint64_t/int64_t or unsigned int, depending on context.

Reviewed-by: lfoltan, kvn, dholmes
2020-08-17 10:08:36 -04:00
Ioi Lam
35e3226df8 8250990: Consolidate object copying code for CDS static/dynamic archive dumping
Reviewed-by: coleenp, ccheung
2020-08-13 18:40:51 -07:00
Yumin Qi
0e60e8ad85 8246181: Avoid walking SymbolTable during -Xshare:dump
All symbols at dump are created as permanent. Store them in a global array to avoid working SymbolTable.

Reviewed-by: iklam, ccheung
2020-06-24 11:15:22 -07:00
Calvin Cheung
847a3baca8 8198698: Support Lambda proxy classes in dynamic CDS archive
Added archving of hidden classes of type lambda proxy classes.

Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Reviewed-by: mchung, iklam, dholmes
2020-06-10 15:50:26 +00:00
Nils Eliasson
99d6bea20d 8244660: Code cache sweeper heuristics is broken
Reviewed-by: thartmann, rehn
2020-06-03 15:26:18 +02:00
Yumin Qi
0c0d485c37 8237750: Load libzip.so only if necessary
Libzip.so is unconditionally loaded even without usage. Fix by on demand loading.

Reviewed-by: dlong, iklam, ccheung
2020-05-05 15:40:18 -07:00
Kim Barrett
4694da31f8 8242078: G1: Improve concurrent refinement analytics and logging
Unify data collection and reporting.

Reviewed-by: tschatzl, sjohanss
2020-04-14 17:31:53 -04:00
Kim Barrett
9f334a1640 8240239: Replace ConcurrentGCPhaseManager
Replace ConcurrentGCPhaseManager with ConcurrentGCBreakpoints

Co-authored-by: Per Liden <per.liden@oracle.com>
Reviewed-by: kbarrett, pliden, sangheki
2020-03-06 18:42:13 -05:00
Kim Barrett
ccbd819a01 8237143: Eliminate DirtyCardQ_cbl_mon
Replace locked data structures with lock-free data structures.

Reviewed-by: tschatzl, sangheki
2020-02-06 19:09:07 -05:00
Harold Seigel
7fc58a1020 8235678: Remove unnecessary calls to Thread::current() in MutexLocker calls
Add THREAD argument when available and make Thread* the first argument to relevant MutexLocker and MonitorLocker constructors

Reviewed-by: lfoltan, coleenp, dholmes
2020-01-16 13:48:23 +00:00
Patricio Chilano Mateo
57ece4c21a 8232733: Remove need to grab Threads_lock while processing handshakes
Threads_lock is not acquired anymore while processing handshakes

Reviewed-by: coleenp, rehn, dcubed, dholmes
2019-12-13 14:28:22 +00:00
Kim Barrett
19bed24b1f 8232588: G1 concurrent System.gc can return early or late
8233279: G1: GCLocker GC with +GCLockerInvokesConcurrent spins while cycle in progress

Refactor G1CH::try_collect and fix bugs with concurrent collections.

Reviewed-by: tschatzl, sjohanss
2019-11-13 18:00:30 -05:00
Daniil Titov
7306526835 8170299: Debugger does not stop inside the low memory notifications code
Reviewed-by: sspitsyn, dholmes
2019-10-08 09:13:08 -07:00
Claes Redestad
fba19ffbb2 8230043: Lazily load libverify
8230140: Remove unused mutex and monitor declarations

Reviewed-by: hseigel, erikj, alanb, dholmes
2019-10-07 16:55:24 +02:00
Daniil Titov
6ccf3351d7 8185005: Improve performance of ThreadMXBean.getThreadInfo(long ids[], int maxDepth)
Reviewed-by: sspitsyn, dholmes, dcubed, rehn
2019-09-25 11:10:05 -07:00
Coleen Phillimore
e49e9292d3 8213150: Add verification for locking by VMThread
Extend verification for all locking not just VMOperations, and fix CLDG lock to not be taken by VM thread.

Reviewed-by: rehn, dholmes
2019-09-24 10:12:56 -04:00
Robbin Ehn
35a9f6864a 8226705: [REDO] Deoptimize with handshakes
Reviewed-by: eosterlund, dcubed, dlong, pchilanomate
2019-09-19 10:52:22 +02:00
Coleen Phillimore
da18495f38 8230003: Make Monitor inherit from Mutex
Reverse inheritance that makes more sense.

Reviewed-by: dholmes, rehn, pchilanomate
2019-08-22 09:51:36 -04:00
Kim Barrett
1acad37ee6 8227054: ServiceThread needs to know about all OopStorage objects
8227053: ServiceThread cleanup of OopStorage is missing some

OopStorages provides named access and iteration.

Reviewed-by: eosterlund, pliden, coleenp
2019-08-21 18:42:30 -04:00
Kim Barrett
e396e38bb3 8227653: Add VM Global OopStorage
Replaced conditional JVMCI global storage with VM global storage.

Reviewed-by: tschatzl, lfoltan, kvn
2019-07-18 14:57:32 -04:00
Kim Barrett
805258f3a9 8225255: Make SATB qset lock-free
Refactor PtrQueueSet, use lock-free stack for SATB completed buffers

Reviewed-by: tschatzl, shade
2019-06-26 13:18:38 -04:00
Daniel D. Daugherty
b0933034e0 8226699: [BACKOUT] JDK-8221734 Deoptimize with handshakes
Reviewed-by: dholmes, rehn, dlong
2019-06-24 22:38:17 -04:00
Robbin Ehn
9baafa55a6 8221734: Deoptimize with handshakes
Reviewed-by: dcubed, dholmes, pchilanomate, dlong, coleenp
2019-05-23 10:13:29 +02:00
Calvin Cheung
72dc5721e0 8207812: Implement Dynamic CDS Archive
Improve the usability of AppCDS

Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Co-authored-by: Jiangli Zhou <jianglizhou@google.com>
Reviewed-by: acorn, jiangli, mseledtsov
2019-05-17 08:29:55 -07:00
Kim Barrett
4af7663979 8160539: Stack frame scanning acquires DerivedPointerTableGC_lock mutex
Use lock-free stack for accumulating table entries.

Reviewed-by: tschatzl, kvn
2019-05-16 20:14:54 -04:00
Vladimir Kozlov
e9c523ae5f 8220623: [JVMCI] Update JVMCI to support JVMCI based Compiler compiled into shared library
Reviewed-by: dnsimon, never, stefank, rehn, neliasso, dholmes, kbarrett, coleenp
2019-05-01 12:31:29 -07:00
Coleen Phillimore
ccb2e9d925 8222988: Use MonitorLocker rather than MutexLocker when wait/notify used
Fixed use cases in code except CMS.

Reviewed-by: rehn, dcubed
2019-04-29 16:01:52 -04:00
Coleen Phillimore
fbafef11c0 8222811: Consolidate MutexLockerEx and MutexLocker
Make MutexLocker be MutexLockerEx implementation, remove MutexLockerEx calls.

Reviewed-by: dcubed, dholmes, pliden, rehn
2019-04-25 10:56:31 -04:00
Stefan Karlsson
23f02171c8 8221393: ResolvedMethodTable too small for StackWalking applications
Reviewed-by: coleenp, rehn
2019-04-10 15:41:04 +02:00
Kim Barrett
757e6ecfec 8220671: Initialization race for non-JavaThread PtrQueues
Include on_thread_(attach|detach) under NJTList_lock.

Reviewed-by: pliden, rkennke
2019-04-01 17:11:38 -04:00
Per Lidén
8e258756bb 8221392: Reduce ConcurrentGCThreads spinning during start up
Reviewed-by: eosterlund, kbarrett
2019-03-27 10:38:49 +01:00
Kim Barrett
725a467ad8 8219613: Use NonJavaThread PtrQueues
Init and use NJT queues, remove shared SATB queue.

Co-authored-by: Aleksey Shipilev <shade@redhat.com>
Reviewed-by: shade, zgu, pliden, tschatzl
2019-03-05 19:54:33 -05:00
Coleen Phillimore
84a6e34fb0 8218266: G1 crash in AccessInternal::PostRuntimeDispatch
Protection_domains can be unloaded in the dictionary pd_set.

Reviewed-by: zgu, hseigel
2019-02-28 16:30:31 -05:00
Ioi Lam
d06f3e7e28 8218751: Do not store original classfiles inside the CDS archive
Remove the OD shared region and decode classfiles on the fly

Reviewed-by: jiangli, ccheung, sspitsyn, redestad
2019-02-21 17:07:35 -08:00
Robbin Ehn
bec8431683 8203469: Faster safepoints
Reviewed-by: dcubed, pchilanomate, dholmes, acorn, coleenp, eosterlund
2019-02-15 14:15:10 +01:00
Patricio Chilano Mateo
c94cdddbdd 8210832: Remove sneaky locking in class Monitor
Removed sneaky locking and simplified vm monitors implementation

Co-authored-by: David Holmes <david.holmes@oracle.com>
Reviewed-by: rehn, dcubed, pliden, dholmes, coleenp
2019-02-05 15:12:13 -05:00
Kim Barrett
5c83330cf8 8212826: Make PtrQueue free list lock-free
Add lock-free stack and use in BufferNode::Allocator.

Reviewed-by: tschatzl, sangheki
2019-01-19 19:50:01 -05:00
Coleen Phillimore
154a1a02bf 8216167: Update include guards to reflect correct directories
Use script and some manual fixup to fix directores names in include guards.

Reviewed-by: lfoltan, eosterlund, kbarrett
2019-01-10 15:13:51 -05:00
David Holmes
5e0ae53450 8213723: More Monitor/mutex initialization management
8213893: StringTable_lock is unused

Reviewed-by: tschatzl, dcubed, coleenp
2018-11-15 17:55:41 -05:00
David Holmes
eac28d7fae 8213137: Remove static initialization of monitor/mutex instances
Moved to the global mutex list in mutexLocker

Reviewed-by: tschatzl, dcubed, rehn, eosterlund
2018-11-08 07:42:08 -05:00
Erik Österlund
97d3dc7902 8212681: Refactor IC locking to use a fine grained CompiledICLocker
Reviewed-by: coleenp, rehn, kvn
2018-11-01 14:57:26 +01:00
Erik Österlund
782fa608d2 8210064: ZGC: Introduce ZConcurrentRootsIterator for scanning a subset of strong IN_NATIVE roots concurrently
Reviewed-by: pliden, kbarrett
2018-10-16 13:14:18 +02:00
Jean Christophe Beyler
d7c7ce19f1 8211980: Remove ThreadHeapSampler enable/disable/enabled methods
Remove methods from ThreadHeapSampler

Reviewed-by: dholmes, phh
2018-10-15 14:16:35 -07:00
Thomas Schatzl
db7b4e20e1 8207200: Committed > max memory usage when getting MemoryUsage
Make sure that modification of memory usage variables are synchronized with returning them to Java.

Reviewed-by: sangheki, mchung
2018-09-04 12:18:35 +02:00
Coleen Phillimore
eb9259138f 8210155: Lock ClassLoaderDataGraph
In preparation for concurrent class unloading.

Reviewed-by: hseigel, eosterlund
2018-08-31 07:03:46 -04:00
Kim Barrett
e1059f1301 8209976: Improve iteration over non-JavaThreads
Add NonJavaThread and move NamedThread iteration to new class.

Reviewed-by: eosterlund, coleenp, rkennke
2018-08-28 16:04:54 -04:00
Gerard Ziemski
e0559bdd88 8209622: applications/kitchensink/Kitchensink.java failed with Kitchensink failed with exit code = 138
SymbolTableLock no longer checks for safepoints

Reviewed-by: coleenp, rehn
2018-08-24 09:12:51 -05:00
Kim Barrett
23f0fb4cde 8209850: Allow NamedThreads to use GlobalCounter critical sections
Add NamedThreads iterator and make GlobalCounter use it.

Reviewed-by: eosterlund, rehn
2018-08-23 18:14:53 -04:00
Jean Christophe Beyler
6129ed590c 8203394: Implementation of JEP 331: Low-Overhead Heap Profiling
Implement Low-Overhead Heap Profiling

Reviewed-by: eosterlund, gthornbr, rehn, sspitsyn, tschatzl
2018-06-15 00:49:54 -07:00