126 Commits

Author SHA1 Message Date
Axel Boldt-Christmas
5dbf13730e 8319797: Recursive lightweight locking: Runtime implementation
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Reviewed-by: rkennke, dcubed, coleenp, stefank
2024-02-13 09:32:58 +00:00
Stefan Karlsson
52d497619e 8325437: Safepoint polling in monitor deflation can cause massive logs
Reviewed-by: aboldtch, dcubed, shade
2024-02-09 13:09:12 +00:00
Axel Boldt-Christmas
a3a2b1fbbf 8324881: ObjectSynchronizer::inflate(Thread* current...) is invoked for non-current thread
Reviewed-by: rrich, dholmes, coleenp, dcubed
2024-02-07 15:49:16 +00:00
Axel Boldt-Christmas
65a0672791 8319773: Avoid inflating monitors when installing hash codes for LM_LIGHTWEIGHT
Reviewed-by: rkennke, dcubed, thartmann
2024-01-12 14:34:42 +00:00
Stefan Karlsson
03759e892d 8320304: Refactor and simplify monitor deflation functions
Reviewed-by: dcubed, dholmes
2023-11-30 12:40:23 +00:00
Stefan Karlsson
0d146361f2 8320515: assert(monitor->object_peek() != nullptr) failed: Owned monitors should not have a dead object
Reviewed-by: dholmes, ihse, sspitsyn, dcubed
2023-11-30 09:46:26 +00:00
Aleksey Shipilev
efc392259c 8319048: Monitor deflation unlink phase prolongs time to safepoint
Reviewed-by: ysr, stefank, aboldtch, dcubed
2023-11-28 09:49:03 +00:00
Axel Boldt-Christmas
91279fcf05 8319778: Remove unreachable code in ObjectSynchronizer::exit
Reviewed-by: rkennke, dholmes, pchilanomate, dcubed
2023-11-27 07:22:32 +00:00
Patricio Chilano Mateo
c39d001c7a 8319137: release _object in ObjectMonitor dtor to avoid races
Reviewed-by: stefank, aboldtch, shade, dcubed, eosterlund
2023-11-22 14:59:47 +00:00
Stefan Karlsson
369bbecc0d 8319896: Remove monitor deflation from final audit
Reviewed-by: dholmes, dcubed
2023-11-17 07:04:13 +00:00
Stefan Karlsson
87be6b69fe 8318757: VM_ThreadDump asserts in interleaved ObjectMonitor::deflate_monitor calls
Reviewed-by: shade, aboldtch, pchilanomate, dcubed
2023-11-16 14:33:50 +00:00
Roman Kennke
31c4e03d5d 8314551: More generic way to handshake GC threads with monitor deflation
Reviewed-by: jsjolen, eosterlund
2023-09-15 09:48:58 +00:00
Coleen Phillimore
f47767ffef 8313882: Fix -Wconversion warnings in runtime code
Reviewed-by: pchilanomate, dlong, dholmes
2023-08-10 11:57:25 +00:00
Thomas Stuefe
9e4fc568a6 8293114: JVM should trim the native heap
Reviewed-by: shade, rehn, dholmes
2023-07-21 12:22:03 +00:00
Daniel D. Daugherty
6402004852 8256302: releasing oopStorage when deflating allows for faster deleting
Reviewed-by: dholmes, rehn, coleenp
2023-06-07 19:59:13 +00:00
Amit Kumar
41ee125a0f 8278411: Implement UseHeavyMonitors consistently, s390 port
Reviewed-by: mdoerr, stuefe, lucy
2023-05-16 15:25:19 +00:00
Roman Kennke
7f6358a8b5 8291555: Implement alternative fast-locking scheme
Co-authored-by: Fei Yang <fyang@openjdk.org>
Co-authored-by: Thomas Stuefe <stuefe@openjdk.org>
Reviewed-by: dcubed, stuefe, shade, dholmes, dlong
2023-05-08 17:51:39 +00:00
Roman Kennke
12d6ec66a6 8307236: Rendezvous GC threads under STS for monitor deflation
Reviewed-by: eosterlund, shade
2023-05-05 14:35:33 +00:00
Aleksey Shipilev
6b81342c22 8305994: Guarantee eventual async monitor deflation
Reviewed-by: simonis, stuefe, dcubed
2023-04-24 17:02:59 +00:00
Justin King
fe42312f9b 8304820: Statically allocate ObjectSynchronizer mutexes
Reviewed-by: dcubed, dholmes
2023-03-31 14:28:22 +00:00
Coleen Phillimore
932be3542d 8298469: Obsolete legacy parallel class loading workaround for non-parallel-capable class loaders
Reviewed-by: dholmes, fparain
2023-03-17 18:56:05 +00:00
Johan Sjölen
71107f4648 8300651: Replace NULL with nullptr in share/runtime/
Reviewed-by: rehn, dholmes
2023-01-25 10:30:02 +00:00
David Holmes
a3364612f7 8298081: DiagnoseSyncOnValueBasedClasses doesn't report useful information for virtual threads
Reviewed-by: gziemski, pchilanomate
2022-12-16 01:08:30 +00:00
David Holmes
3cdbd878e6 8298241: Replace C-style casts with JavaThread::cast
Reviewed-by: coleenp, stefank, sspitsyn
2022-12-15 21:15:34 +00:00
Robbin Ehn
d523d9d081 8297864: Dead code elimination
Reviewed-by: coleenp, pchilanomate
2022-12-05 10:31:35 +00:00
Daniel D. Daugherty
6065516bb3 8291418: adjust monitor deflation logging and deflate_idle_monitors use
Reviewed-by: dholmes, stuefe, pchilanomate
2022-12-02 22:31:08 +00:00
Stefan Karlsson
bfc5816595 8295475: Move non-resource allocation strategies out of ResourceObj
Reviewed-by: coleenp, stuefe, rehn, dholmes
2022-11-10 08:31:37 +00:00
Coleen Phillimore
94eb25a4f1 8256072: Eliminate JVMTI tagmap rehashing
Reviewed-by: kbarrett, eosterlund
2022-11-03 17:27:00 +00:00
Roman Kennke
a44ebd5fbc 8295849: Consolidate Threads::owning_thread*
Reviewed-by: dcubed, sspitsyn
2022-10-28 20:23:21 +00:00
Markus Grönlund
21e4f06ada 8295274: HelidonAppTest.java fails "assert(event->should_commit()) failed: invariant" from compiled frame"
Reviewed-by: egahlin
2022-10-14 12:34:42 +00:00
Robbin Ehn
979efd4174 8289004: investigate if SharedRuntime::get_java_tid parameter should be a JavaThread*
Reviewed-by: dholmes, jsjolen
2022-10-05 12:44:20 +00:00
Ioi Lam
7244dd6fab 8292267: Clean up synchronizer.hpp
Reviewed-by: coleenp, dcubed, dholmes
2022-08-19 17:25:12 +00:00
Ioi Lam
2edd550105 8292312: Work around memset() called operator new
Reviewed-by: dcubed
2022-08-19 03:05:13 +00:00
Coleen Phillimore
96a542feb2 8227060: Optimize safepoint cleanup subtask order
Reviewed-by: kbarrett, pchilanomate
2022-07-19 16:32:07 +00:00
Robbin Ehn
ac399e9777 8286957: Held monitor count
Reviewed-by: rpressler, eosterlund
2022-07-08 07:12:19 +00:00
Ioi Lam
cdf6979259 8289230: Move PlatformXXX class declarations out of os_xxx.hpp
Reviewed-by: coleenp, ccheung
2022-07-02 14:45:10 +00:00
Coleen Phillimore
270cf67e5f 8288752: Split thread implementation files
Reviewed-by: dholmes, rehn, iklam
2022-06-22 12:49:25 +00:00
Alan Bateman
9583e3657e 8284161: Implementation of Virtual Threads (Preview)
Co-authored-by: Ron Pressler <rpressler@openjdk.org>
Co-authored-by: Alan Bateman <alanb@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Co-authored-by: Andrew Haley <aph@openjdk.org>
Co-authored-by: Rickard Bäckman <rbackman@openjdk.org>
Co-authored-by: Markus Grönlund <mgronlun@openjdk.org>
Co-authored-by: Leonid Mesnik <lmesnik@openjdk.org>
Co-authored-by: Serguei Spitsyn <sspitsyn@openjdk.org>
Co-authored-by: Chris Plummer <cjplummer@openjdk.org>
Co-authored-by: Coleen Phillimore <coleenp@openjdk.org>
Co-authored-by: Robbin Ehn <rehn@openjdk.org>
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org>
Co-authored-by: Sergey Kuksenko <skuksenko@openjdk.org>
Reviewed-by: lancea, eosterlund, rehn, sspitsyn, stefank, tschatzl, dfuchs, lmesnik, dcubed, kevinw, amenkov, dlong, mchung, psandoz, bpb, coleenp, smarks, egahlin, mseledtsov, coffeys, darcy
2022-05-07 08:06:16 +00:00
Fei Yang
5905b02c0e 8276799: Implementation of JEP 422: Linux/RISC-V Port
Co-authored-by: Yadong Wang <yadonn.wang@huawei.com>
Co-authored-by: Yanhong Zhu <zhuyanhong2@huawei.com>
Co-authored-by: Feilong Jiang <jiangfeilong@huawei.com>
Co-authored-by: Kun Wang <wangkun49@huawei.com>
Co-authored-by: Zhuxuan Ni <nizhuxuan@huawei.com>
Co-authored-by: Taiping Guo <guotaiping1@huawei.com>
Co-authored-by: Kang He <hekang6@huawei.com>
Co-authored-by: Aleksey Shipilev <shade@openjdk.org>
Co-authored-by: Xiaolin Zheng <yunyao.zxl@alibaba-inc.com>
Co-authored-by: Kuai Wei <kuaiwei.kw@alibaba-inc.com>
Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org>
Reviewed-by: ihse, dholmes, rriggs, kvn, shade
2022-03-24 09:22:46 +00:00
Daniel D. Daugherty
a5f5d60f25 8273107: RunThese24H times out with "java.lang.management.ThreadInfo.getLockName()" is null
Reviewed-by: rehn, coleenp, eosterlund
2021-12-17 21:24:51 +00:00
Roman Kennke
5b81d5eeb4 8276901: Implement UseHeavyMonitors consistently
Reviewed-by: coleenp, mdoerr, dcubed
2021-12-07 14:41:42 +00:00
Leonid Mesnik
a5e4def526 8265489: Stress test times out because of long ObjectSynchronizer::monitors_iterate(...) operation
Reviewed-by: dcubed
2021-09-08 19:31:18 +00:00
Roman Kennke
f22619032d 8270894: Use acquire semantics in ObjectSynchronizer::read_stable_mark()
Reviewed-by: dholmes
2021-07-23 10:42:00 +00:00
Patricio Chilano Mateo
2fd7943ec1 8256425: Obsolete Biased Locking in JDK 18
Reviewed-by: kvn, dholmes, dcubed, rrich
2021-06-24 18:54:41 +00:00
Guoxiong Li
cd678a383f 8268368: Adopt cast notation for JavaThread conversions
Reviewed-by: dholmes, stefank
2021-06-23 02:21:24 +00:00
Daniel D. Daugherty
fe333431c8 8256304: should MonitorUsedDeflationThreshold be experimental or diagnostic
8256301: ObjectMonitor::is_busy() should return bool

Reviewed-by: coleenp, pchilanomate
2021-05-21 18:32:25 +00:00
David Holmes
02f895c5f6 8252685: APIs that require JavaThread should take JavaThread arguments
Reviewed-by: coleenp, sspitsyn, kvn, iklam
2021-05-17 04:05:44 +00:00
Ioi Lam
33b6378f1e 8265101: Remove unnecessary functions in os*.inline.hpp
Reviewed-by: dholmes, kbarrett
2021-04-22 05:44:39 +00:00
Harold Seigel
af13c64f68 8264711: More runtime TRAPS cleanups
Reviewed-by: lfoltan, pchilanomate, dholmes, dcubed
2021-04-08 12:13:19 +00:00
Patricio Chilano Mateo
2ad6f2d9bc 8263896: Make not_suspended parameter from ObjectMonitor::exit() have default value
Reviewed-by: rehn, dcubed, dholmes
2021-03-30 15:00:38 +00:00