Commit graph

55 commits

Author SHA1 Message Date
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
Robbin Ehn
66f8951e15 8195097: Make it possible to process StringTable outside safepoint
Reviewed-by: coleenp, gziemski, iklam, jiangli
2018-06-07 14:11:56 +02:00
Ioi Lam
5f578213c5 8189140: SystemDictionaryShared::initialize() should be renamed to be more meaningful
Removed this function, added JavaCalls::construct_new_instance and moved SharedDictionary_lock

Reviewed-by: jiangli, ccheung, dholmes, coleenp
2018-05-15 14:49:10 -07:00
Erik Gahlin
a060be188d 8199712: Flight Recorder
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Reviewed-by: coleenp, ihse, erikj, dsamersoff, mseledtsov, egahlin, mgronlun
2018-05-15 20:24:34 +02:00
Gerard Ziemski
edc81d17e1 8202150: [REDO] Split globals.hpp to factor out the Flag class
Factored out Flag out go globals, renamed to JVMFlag

Reviewed-by: coleenp, dholmes, kvn
2018-04-26 11:19:05 -05:00
Gerard Ziemski
816e2e5fe0 8202151: [BACKOUT] Split globals.hpp to factor out the Flag class
Backed out JDK-8081519

Reviewed-by: kvn
2018-04-23 14:51:16 -05:00
Gerard Ziemski
60723b7e3d 8081519: Split globals.hpp to factor out the Flag class
Factored out Flag out go globals, renamed to JVMFlag

Reviewed-by: coleenp, dholmes, kvn
2018-04-23 10:59:39 -05:00
Coleen Phillimore
d187884156 8198313: Wrap holder object for ClassLoaderData in a WeakHandle
Use WeakHandle for ClassLoaderData::_holder so that is_alive closure is not needed

Reviewed-by: rehn, kbarrett
2018-04-10 10:06:42 -04:00
Thomas Schatzl
83d7c657c4 8197573: Remove concurrent cleanup and secondary free list handling
Remove secondary free list and all associated functionality, moving the cleanup work into the Cleanup pause instead.

Reviewed-by: sangheki, sjohanss
2018-03-28 16:39:32 +02:00
Lutz Schmidt
b7cb1a07e4 8198691: CodeHeap State Analytics
Reviewed-by: kvn, thartmann
2018-03-26 12:59:45 -07:00