Skip to content

Eclipse OpenJ9 v0.39.0

Compare
Choose a tag to compare
@pshipton pshipton released this 14 Jun 19:14
· 3597 commits to master since this release
088b836

Eclipse release plan: https://projects.eclipse.org/projects/technology.openj9/releases/0.39.0
Release notes: https://www.eclipse.org/openj9/docs/version0.39
Project release notes, known issues: https://github.com/eclipse-openj9/openj9/blob/master/doc/release-notes/0.39/0.39.md
Works with: 20.0.1

Release details:

Branch name: v0.39.0-release
Tag: openj9-0.39.0

Repo SHAs:

OpenJ9: 088b836
OMR: eclipse-openj9/openj9-omr@e4f52d2

Security Vulnerabilities Resolved
N/A

JITServer Helm Chart - Easier deployment of JITServer technology in a Kubernetes or OpenShift cluster
https://github.com/eclipse/openj9-utils/tree/master/helm-chart/openj9-jitserver-chart

For details about the release and release candidates, please see: https://github.com/eclipse/openj9/blob/master/doc/processes/release_process.md

For the list of OMR changes see https://github.com/eclipse/openj9-omr/releases/tag/openj9-0.39.0

OpenJ9 Changes from 0.38

d57d059..088b836
088b836 [FFI/Jtreg_JDK20] Keep the downcall address alive for downcall (0.39) ChengJin01 #17563
9076eed (0.39) Update openssl to version 1.1.1u Keith W. Campbell #17557
a6e7d5d [FFI/Jtreg_JDK20] Validate the downcall address with the scope check (0.39) ChengJin01 #17529
19b0de6 0.39.0: Insert branch around re performing store for awrtbar Rahil Shah #17530
a10e6b9 Revert "(0.39) Sync JVM init and exit paths" Babneet Singh #17439
8b5fd99 [Jtreg/FFI/0.39] Remove the null segment check for pointer ChengJin01 #17414
42ec58a (0.39) Fix to handle suspend/resume of virtual/carrier threads Dipak Bagadiya #17416
d42c916 (0.39) Sync JVM init and exit paths Babneet Singh #17417
7abab17 (0.39) Prototype Continuation caching Babneet Singh #17411
8f80c76 Set CurrentThread sym ref in defaultMethodDefAliases Annabelle Huo #17310
746811d Make JITServer CRIU tests more robust Irwin D'Souza #17313
84d3914 Use a recent OMR acceptance build as bootjdk for AIX and for s390x Linux Keith W. Campbell #17338
9c03db9 Restore @OverRide annotation for Access.getLoaderNameID() Jason Feng #17341
eb7a704 Hoist getSupportsInlineStringHashCode check for better readability Shubham Verma #17331
74c5450 Allow inlining of java/lang/ref/Reference.refersTo method Henry Zongaro #13619
f6ef15b Refactor getStackTraceImpl to remove use of VThreadInspector Jack Lu #17303
63a3424 Remove JAVA19 pConfig & JAVA21 uses rt-compressed.sunJava21.jar Jason Feng #17345
c694456 Update OMR Acceptance build documentation for coordinated merges Daryl Maier #17346
60e30f0 Remove unwanted, misleading comment Keith W. Campbell #17342
74d31a5 Don't differenciate Q from L types in verifier Ehren Julien-Neitzert #17236
29d64d0 Enable Dual Indexable Object Header Shape Functionality Shubham Verma #16420
d441864 Enable Access.getLoaderNameID() for JDK11/17 Jason Feng #17339
5156ebf Stop failing compilations due to final Object invokeinterface Devin Papineau #17317
3e96e9c Restrict inlining of StringLatin1.inflate for balanced GC Dhruv Chopra #17328
c2a95b8 Revert "Fix to handle suspend/resume of virtual/carrier threads" Babneet Singh #17335
0609eb4 Run compiled methods from MethodHandle INLs Graham Chapman #17322
0fe9c4b Add Unsupported Warning for Hierarchical Scan Ordering with Balanced Jon Oommen #17187
aa5727e Fix to handle suspend/resume of virtual/carrier threads Dipak Bagadiya #16943
275bb5a Disable safe point OSR if sampled object allocate hook is used Graham Chapman #17314
a26b88f Use Java 20 as bootjdk for jdknext Keith W. Campbell #17302
c5e24ed Fix jvmtiGetStackTrace Babneet Singh #17318
85db8ab [JDK20] Update jvmtiGetCarrierThread Babneet Singh #17316
d4443d6 Preserve array for permitted subtype accross alloc Tobi Ajila #17299
b862c8b GC Scheduler Cleanup Salman Rana #17273
6eb1d66 [FFI/Test] Remove Hotspot in playlist.xml ChengJin01 #17291
87bad8e Enable JITServer post-restore only if explicitly specified Irwin D'Souza #17205
84325c6 Update 0.38.0 release notes Sreekala Gopakumar #17304
11ae6a7 CRIU BytecodeInterpreter requires J9VM_OPT_CRIU_SUPPORT Jason Feng #17297
43b0864 Make J9::ClassEnv::getArrayElementWidthInBytes() work in JITServer Devin Papineau #17276
7481ec5 Add unique ID comment to CommunicationStream::MINOR_NUMBER Devin Papineau #17292
6f2d2d3 AArch64: Remove a TODO comment for ArrayCopyBNDCHK KONNO Kazuhiro #17213
229feb8 AArch64: Use stp/ldp instructions for preserved registers KONNO Kazuhiro #17192
7977a21 CRIU BytecodeInterpreter enables DO_HOOKS Jason Feng #17245
c9dbac9 Copy functional test excludes for 21 from 20 Peter Shipton #17262
a82a31b Update source/target versions to 8 Keith W. Campbell #17183
ab8319b [FFI/JDK20_Jtreg] Fix the issue with the arguments/return value ChengJin01 #17087
f82ffb6 Relocate a set of helper functions from VMHelpers to ContinuationHelpers Lin Hu #17059
e541240 DDR: Fix NPE in StackMap logging Devin Nakamura #17264
222d7c0 Remove private system properties in jdk17+ Peter Shipton #17257
c84b9b6 Don't reload j9thr from the wrong location Peter Shipton #17246
3e9653d Move freeContinuation to yieldContinuation Jack Lu #17097
8490b80 Add check for string length in getCachedUTFString() Hang Shao #17259
8c3b2e2 Replace J9VM_MODRON_SCAVENGER_CACHE_* to OMR_COPYSCAN_CACHE_* Dmitri Pivkine #16820
78a79a0 Reset jitStackFrameFlags ASAP in OJDK MH INLs Babneet Singh #17244
bf214ec Stop exporting functions not needed for Java 21 Keith W. Campbell #17237
36c047f JDK21 sets bootclassloader.unnamedModule after java.base module creation Jason Feng #17201
fdbd742 Create prex arg info from callee symbol for array-typed parameters Devin Papineau #17168
7f68fd6 Fix inlining when the root method is a customized LambdaForm Devin Papineau #17200
57c7680 JDK21 testSCCMLTests1_openj9 adopts lambda class w/o a numerical suffix Jason Feng #17224
6e2f37f Merge started and finished flags into continuation.state Lin Hu #17193
9126ed1 Prepare MM_Scheduler for OMR Base Class Changes Salman Rana #17229
f52d032 Handle vary compilation error on Windows builds Violeta Sebe #17226
ea53bde Stop adding -javaagent to classpath Devin Nakamura #17214
e52cacf x86: Preserve xmm4 in fpRem helper BradleyWood #17157
ea2117e Fully distinguish body info address relocations Christian Despres #17227
9e96a3e Update 0.38.0 release note Sreekala Gopakumar #17223
99b5e2b jvmti: delay allocation of tls keys Devin Nakamura #17186
e1ca427 Ignore ScopedMemoryAccess in isCallerClassJavaNio() Peter Shipton #17221
1e20696 Support JNI_VERSION_21 for jdk21+ Keith W. Campbell #17219
15c1311 Avoid hang in Test_ThreadGroup.test_remove() on jdk21 Peter Shipton #17216
b39a9d2 Check options on whether or not to inline Thread.currentThread Annabelle Huo #17182
7bff45e Refactor GC CRIU Routines Salman Rana #17145
6f563d2 [FFI] Update the code against the changes in JDK21 ChengJin01 #17188
9f00c8d Update JIT Hooks Document Irwin D'Souza #16973
94bbd24 Add checks to prevent invalid address access in MethodMetaData Nazim Bhuiyan #17103
63e6b4f Avoid timing hole caused by instruction reordering Lin Hu #17191
b8a31db Fix missing concurrent scan finish notification Lin Hu #17190
ec79e16 Increase wait time in test_YieldedVirtualThreadGetStackTrace Babneet Singh #17194
42c53e6 Convert notices to markdown and include CRIU and OpenSSL Peter Shipton #17166
82d976e Update 0.37 release notes, OpenJDK 19 is out of support Peter Shipton #17178
e864677 Document virtual thread issues in the 0.37 release notes Babneet Singh #17179
4a7971d Use non-helper for array element load/store in ILGen Annabelle Huo #17072
0b07d1c Fix cmdLineTests for JVM option setting LongyuZhang #17184
9ad1313 Fix SCC AOT code validation in checkpoint-mode Younes Manton #17132
5cee969 Modify the translated PII files in nls folder 20230413 Dong Chen #17176
5636c48 CRIU not set J9_EXTENDED_RUNTIME_DEBUG_MODE and enable DO_HOOKS Jason Feng #17159
4a2643c Remove unwanted spaces in preprocessor directives Keith W. Campbell #17158
31664b5 DirectByteBuffer accepts long capacity in jdk21+ Keith W. Campbell #17167
3055be1 Update OpenSSL with additional CVE fixes to 1.1.1t Peter Shipton #17161
99453da Update !vthread command to use GC continuation list Gengchen Tuo #17093
2bcb9cd Create draft 0.38.0 release note Sreekala Gopakumar #17147
b831fcc Remove Fast_java_lang_System_arraycopy Ehren Julien-Neitzert #17140
a3a82fd Never validate class names provided via privileged API for jdk21+ Keith W. Campbell #17126
1b4bf89 Add full support for the ignore restoreargs option Tobi Ajila #17156
f9950fe [FFI/JDK20_Jtreg] Normalize the arguments in the upcall dispatcher ChengJin01 #17142
1e3bc2f [FFI/JDK20_Jtreg] Handle CaptureCallState in the downcall handle ChengJin01 #17127
eec6dde Remove redundant tests of OPENJDK_METHODHANDLES Keith W. Campbell #17152
cd4b1a0 Minor javadoc fixes Keith W. Campbell #17154
732bff2 Print warning when java.io.tmpDir does not exist Peter Shipton #17141
2fc1586 Add support for -XX:[+|-]HandleSIGUSR2 Babneet Singh #16974
11eb3b7 Add JIT post-restore cmdline tests Irwin D'Souza #17096
a4a008d Clarify usage of the body info address relocations Christian Despres #17148
9d0c064 Use new API for simplifyChildren() Kevin Dean #17113
a7ab535 Remove empty parentheses when constructing TR::ClassUnloadMonitorCriticalSection object Irwin D'Souza #17143
27f0c87 Read-acquire Class Unload Mutex for compilation before checkpoint Irwin D'Souza #17136
ef6969e Ignore null classes when searching the FCC Ehren Julien-Neitzert #17001
1c6ce86 Provide JITServer implementation for CRIU specific FE queries Marius Pirvu #17130
ab86d5a Handling of non-TLS client connect failures to an encrypted JITServer SajinaKandy #17004
4075b02 valhalla enable java/lang/Access methods Jason Feng #17118
0ff0696 AArch64: Save return address in VMThread in NEW_DUAL_MODE_HELPER KONNO Kazuhiro #17100
c4afb5c Update GC DDR to Remove Unused GC MemoryPoolHybrid Salman Rana #17106
8ee7823 zOS AttachAPI doesn't use FileLockWatchdogTask for CommonControlFiles Jason Feng #17110
93ff7e1 Pass separate JVM options to cmdLineTester Irwin D'Souza #17109
ff3512b Update ThreadMXBean test for isIBMJava8 to exclude jdk11+ Peter Shipton #17102
ff97658 Relocate state of Continuation from native structure to Object Lin Hu #17081
ca3e248 AArch64: Enable arrayset optimizations Akira Saitoh #17015
ff024fc Correctly ifdef Java19 code Jack Lu #17086
e656d2e [FFI/Jtreg] Validate the downcall function address in JDK20 ChengJin01 #17074
a795997 Test result of arraycmp for value type comparison Henry Zongaro #16776
85b36e5 Add temporary define of OMRPORT_MMAP_FLAG_ZOS_READ_MAPFILE Hang Shao #17083
55b9267 Refactor VirtualThread synchronization design Jack Lu #16855
511fc3d Fix javadoc errors and add explicit constructors Keith W. Campbell #17077
2f292f3 New convert intrinsic Gita Koblents #17034
511fd75 [FFI/Test] Restore the fix for addDoubleAndIntDoubleLongFromStruct ChengJin01 #17075
3fca5fd Export dtfj packages required for plugins Peter Shipton #17064
db59af5 JDK21 adds JVM_VirtualThreadMount/JVM_VirtualThreadUnmount Jason Feng #16985
d1a60b5 Add missing OMRCompilationStrategy.cpp to fix UMA build Daryl Maier #17068
c797e9f Add paired TraceEntry Jason Feng #17057
4b12608 Re-generate client UID after CRIU restore operation Marius Pirvu #17043
502bab7 Remove OpenJ9 impl of com.sun.management.ThreadMXBean from IBM Java 8 Peter Shipton #17050
1268e69 [FFI/Test] Add an exception case for the nested upcall ChengJin01 #17014
4c7066e CRIU Xtrace prepares the trace output file Jason Feng #17017
ba24fb2 Modify the translated PII files in nls folder 20230329 Dong Chen #17051
7f984da Refactor CompilationStrategy and CompilationController Tao Guan #16700
68466c9 Introduce Dual Indexable Object Header Shape Functionality Jon Oommen #16096
43d1e8c Fix getting username from env in checkpoint mode Younes Manton #16992
f514a30 Disable FFI specific test suites for JDK21 ChengJin01 #17013
17f0737 Update to latest cent6 build container Adam Brousseau #17040
5d5ede5 Fix the 32-bit compile issue in ScavengerDelegate.cpp Lin Hu #17030
b9d0fde Add jdk19, jdk20 build instructions and remove jdk18 Peter Shipton #17032
8836a03 Add support for jdk20 in mkdocker.sh and remove jdk18 Keith W. Campbell #17035
bf06aae Add package info for criu Tobi Ajila #16927
0b7f3e4 Include CFR_ACC_VALUE_TYPE and CFR_ACC_IDENTITY into interface mask Hang Shao #16464
e2a6507 Refactor valueHashCode to be more efficient Ehren Julien-Neitzert #16986
8c3233d Handle continuation scanning in pending to be mounted case Lin Hu #16713
79cd876 CRIU JDK11UpTimeoutAdjustmentTest add verbose test output Jason Feng #16952
18a9eb9 CRIU requires Xdump::dynamic to support exception throw/catch options Jason Feng #17002
0af5e51 Remove setImmutableField on currentThread for JDK19 and up Annabelle Huo #17009
f2971b5 CRIU configureDumpAgents() macros apply J9VMInitArgs Jason Feng #17006
7e14589 Use a non-root user in docker files Peter Shipton #16971
670bf0f Add missing include path for UMA build Keith W. Campbell #17012
df81fb0 Update the FFI related code for JEP434/JDK20 ChengJin01 #16835
7032e0a Add a javaVM variant of isCheckpointAllowed Tobi Ajila #16990
91bdf39 Reference openjdk.org instead of openjdk.java.net Keith W. Campbell #16991
d0a6950 Disable method type deadlock test Tobi Ajila #16982
0b97ffc Fix GetCurrentContendedMonitor on mounted CarrierThread Jack Lu #16983
13f9b4c Use sharedCacheAPI to determine -Xshareclasses:disableOnRestore Irwin D'Souza #16972
d486a2c AArch64: Implement EDO KONNO Kazuhiro #16848
c03c76e [FFI] Handling the captured exceptions for the upcall method ChengJin01 #16932
6e69d93 Add error handling to enterContinuationImpl Ehren Julien-Neitzert #16953
7eec03e Update common.mk to compile new OMR Register Allocator files Henry Zongaro #16912
3e40a26 CRIU restore setup Xtrace output file Jason Feng #16944
34daf46 Include the product name in the DTFJ JavaRuntime version Peter Shipton #16941
9e9fe32 Cache Security Algorithms For CRIU Startup Jason Katonica #16888
bfa20aa Update jdmpview !coreinfo to print vm properties Peter Shipton #16931
b5702e8 Correct link to jitserver Problem Determination guide Henry Zongaro #16949
1c112d1 CRIU restore with -Xdump using CRIUSupport.registerRestoreOptionsFile() Jason Feng #16926
0bd09e6 Fix wrong store instruction to pass an object to the VM. jimmyk #16925
3d7ba05 Add option to disable SCC after CRIU restore Ehren Julien-Neitzert #16921
582b180 Add Missing GC NLS Sample Input Salman Rana #16938
ad1aa21 Add support for CRIU restore args in javadump Mike Zhang #16917
1bd783b Invalidate compiles if -Xdump on exception is specified post restore Irwin D'Souza #16928
6dc86ee CRIU Invoke Global Collector Reinit Salman Rana #16883
5b6fbc8 Value Types: Set setHasNews on the compiled method symbol Annabelle Huo #16916
de87c47 CRIU tests use success and explicit failure conditions before checkpoint Jason Feng #16913
8cc902b CRIU Verbose Logging Reinit/Reconfig for Restore Salman Rana #16845
f4fa6a8 Add support for -Xrs on restore Tobi Ajila #16919
5938c2f Add support to disable JITServer and AOT post restore Irwin D'Souza #16911
ccdc87f Add missing parentheses in macro definitions Jason Feng #16924
49a309f Use PORTLIB constant Jack Lu #16918
648abd1 Remove redundant check and fix assert condition in DAA evaluators Shubham Verma #16887
728bd1d Add missing parentheses in macro definitions Keith W. Campbell #16909
44cb0a6 Delete remnant of OFFLOAD support that was missed Peter Shipton #16906
4068456 Use GC continuation list in walkAllStackFrames Jack Lu #16884
f7c2af6 Revert "Handle convert intrinsic in VectorAPIExpansion" Peter Shipton #16897
872ca90 CRIU restore loads trace options with registerRestoreOptionsFile() Jason Feng #16775
3c730a2 Update release note 0.37.0 with tokenlabel support on Linux Z Sreekala Gopakumar #16825
c50acf4 Fix Q types in lambda signature generation Ehren Julien-Neitzert #16815
60f37b4 Stress CRIU GC Thread Pool Contract/Expand Routines Salman Rana #16882
2dd20c5 Ensure JDWP threads are not halted when hooks run for CRIU Mike Zhang #16653
03967d8 Update IBM copyright notices to remove last-modified year Devin Papineau #16881
fe0bec4 Pass valid JNI refs to getVirtualThreadState Babneet Singh #16877
bfe3610 CRIU getRestoreSystemProperites() skips non system property entries Jason Feng #16873
a5df779 Implement JavaLangAccess.getLoaderNameID(ClassLoader) Keith W. Campbell #16874
85fe184 Post Restore Options Processing Part 4 Irwin D'Souza #16852
b9c0de5 Handle convert intrinsic in VectorAPIExpansion Gita Koblents #16801
da73859 Support for restore args env var Tobi Ajila #16770
205875e Invoke VirtualThread J9Hooks after releasing VirtualThread List Mutex Babneet Singh #16856
59bdae9 Init Scheduler Window Aleksandar Micic #16837
f6c3f98 Set thread blocked flag before triggering JVMTI Monitor Contended Enter Gengchen Tuo #16844
ec80c9b Add NULL check for VM args array Tobi Ajila #16842
2bcb989 Post Restore Options Processing Continued Irwin D'Souza #16838
90f69ee Remove explicit enable jitserver config option Adam Brousseau #16847
754d0fc Disable CRC32C optimization on Power when arraylets are enabled Bhavani SN #16813
5a4ab53 Initialize _catchSamplingSizeThreshold in J9Options.cpp Marius Pirvu #16832
9b39d6c Add z/TPF prehook and posthook dumpagent user exits Jim Johnston #16731
759b80e JDK21 Access invoke String.newStringUTF8NoRepl(bytes, offset, len, true) Jason Feng #16828
ec98166 AttachAPI TestJps should search a unique needle Jason Feng #16817
5efa350 CRIU throws UnsupportedOperationException for SecurityManager Jason Feng #16806
ba51538 Fix unused variable in ObjectMonitor.cpp Peter Shipton #16819
f14707f Update jdkcompliance settings Keith W. Campbell #16736
968e248 Comp Threads and JIT Server options post restore Irwin D'Souza #16769
76297d0 Handle lock reservation in single thread mode Tobi Ajila #16812
a61413c Adding missing break statement Bhavani SN #16471
9464e1b Fix VM Access assertion for JVMTI VirtualThread[Mount|Unmount] Babneet Singh #16816
15a805c Fix GetThreadState to return correct state for carrier thread Dipak Bagadiya #16805
58fb3c2 Update default stream for reading core files Keith W. Campbell #16811
a2d0fe7 Ensure env is not NULL when calling checked JNI functions Ehren Julien-Neitzert #16760
a8164fc Infrastructure for EDO profiling optimization Marius Pirvu #16799
6cddd76 Remove unnecessary cast in jvmtiGetVirtualThread Babneet Singh #16809
8078ad6 Fix jvmtiGetVirtualThread and make it more robust Babneet Singh #16787
69b614e Revert "Evaluate Class methods calls at compile time when possible" Peter Shipton #16803
645d272 Pin virtual threads in JVMTI RawMonitorEnter and RawMonitorExit Babneet Singh #16790
0494957 GC Restore (CRIU): Introduce Restore Opts Parsing and Extend Failure Path Error Reporting Salman Rana #16771
2870c99 Valhalla adds Access.classFileFormatVersion() Jason Feng #16789
72d7115 Disable CRC-32C acceleration on Z when arraylets are enabled Spencer Comin #16797
2bcc3ef Evaluate Class methods calls at compile time when possible Nazim Bhuiyan #16567
abf2683 Fix variable declaration Jason Feng #16791
58d812f Rename Continuation.execute to match the RI Babneet Singh #16786
61edee1 CRIU internal JVM hook iterates J9Class and its ramMethods Jason Feng #16622
98450ae Release note 0.37.0-com.sun.management.ThreadMXBean interface Sreekala Gopakumar #16784
9bf20a0 JDK21 Add jvmtitests_excludes_21.xml Jason Feng #16778
0040f96 Allow for overriding Simplifier handlers defined by OMR Henry Zongaro #16738
cce33ed Remove redundant check that liveVirtualThreadList is non-null Keith W. Campbell #16773
34dde5f Use 'J9Object*' instead of j9object_t Keith W. Campbell #16774
f44193e Remove unnecessary freemarker properties Keith W. Campbell #16759
903116b Add DDR command !vthreads to list virtual threads Gengchen Tuo #15679
0f6cbb1 Refactor Continuation.yield method naming to match RI Jack Lu #16693
20d4bf4 Add documentation about EDO optimization mechanics Marius Pirvu #16766
51e14cb Initial Post Restore compiler options processing Irwin D'Souza #16716
5adb187 Handle Unsupported GC policies with CRIU Salman Rana #16739
047c13e Downgrade/postpone compilations when they are unlikely to improve throughput Marius Pirvu #16361
5eced64 Change order in gcShutdownHeapManagement Dmitri Pivkine #16765
42a61be Fix a few comments Keith W. Campbell #16757
823127b ClassScanner should ignore "PermittedSubclasses" attribute in Java 17 Keith W. Campbell #16758
ed1c550 Implement methods in com.sun.management.ThreadMXBean Peter Shipton #16698
42d8487 z10 is the minimum level for z/OS Java 8, compile with ARCH(8) Peter Shipton #16749
27a475d Stop using "javac -source 7 -target 7" Keith W. Campbell #16748
e883feb Fix output from J9::SymbolReferenceTable functions KONNO Kazuhiro #16709
60e7f20 Java 21 adds JavaLangAccess.getUTF16Char() & countPositives() Jason Feng #16742