diff --git a/.gitignore b/.gitignore index c6a27e8..6030d6d 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ /openjdk-21.0.3+7-ea.tar.xz /openjdk-21.0.3+9.tar.xz /openjdk-21.0.4+1-ea.tar.xz +/openjdk-21.0.4+5-ea.tar.xz diff --git a/NEWS b/NEWS index 53288f1..a44c716 100644 --- a/NEWS +++ b/NEWS @@ -25,6 +25,8 @@ Live versions of these release notes can be found at: - JDK-8293850: need a largest_committed metric for each category of NMT's output - JDK-8294699: Launcher causes lingering busy cursor - JDK-8294985: SSLEngine throws IAE during parsing of X500Principal + - JDK-8295111: dpkg appears to have problems resolving symbolically linked native libraries + - JDK-8299023: TestPLABResize.java and TestPLABPromotion.java are failing intermittently - JDK-8301183: (zipfs) jdk/jdk/nio/zipfs/TestLocOffsetFromZip64EF.java failing with ZipException:R0 on OL9 - JDK-8303525: Refactor/cleanup open/test/jdk/javax/rmi/ssl/SSLSocketParametersTest.java - JDK-8303773: Replace "main.wrapper" with "test.thread.factory" property in test code @@ -35,20 +37,29 @@ Live versions of these release notes can be found at: - JDK-8305645: System Tray icons get corrupted when Windows primary monitor changes - JDK-8305931: jdk/jfr/jcmd/TestJcmdDumpPathToGCRoots.java failed with "Expected chains but found none" - JDK-8306040: HttpResponseInputStream.available() returns 1 on empty stream + - JDK-8308144: Uncontrolled memory consumption in SSLFlowDelegate.Reader - JDK-8308453: Convert JKS test keystores in test/jdk/javax/net/ssl/etc to PKCS12 - JDK-8309142: Refactor test/langtools/tools/javac/versions/Versions.java - JDK-8309752: com/sun/jdi/SetLocalWhileThreadInNative.java fails with virtual test thread factory due to OpaqueFrameException - JDK-8309757: com/sun/jdi/ReferrersTest.java fails with virtual test thread factory - JDK-8309763: Move tests in test/jdk/sun/misc/URLClassPath directory to test/jdk/jdk/internal/loader + - JDK-8309871: jdk/jfr/api/consumer/recordingstream/TestSetEndTime.java timed out + - JDK-8309890: TestStringDeduplicationInterned.java waits for the wrong condition - JDK-8310070: Test: javax/net/ssl/DTLS/DTLSWontNegotiateV10.java timed out + - JDK-8310228: Improve error reporting for uncaught native exceptions on Windows - JDK-8310234: Refactor Locale tests to use JUnit - JDK-8310355: Move the stub test from initialize_final_stubs() to test/hotspot/gtest + - JDK-8310513: [s390x] Intrinsify recursive ObjectMonitor locking - JDK-8310731: Configure a javax.net.ssl.SNIMatcher for the HTTP/1.1 test servers in java/net/httpclient tests - JDK-8310818: Refactor more Locale tests to use JUnit + - JDK-8310913: Move ReferencedKeyMap to jdk.internal so it may be shared - JDK-8311792: java/net/httpclient/ResponsePublisher.java fails intermittently with AssertionError: Found some outstanding operations - JDK-8311823: JFR: Uninitialized EventEmitter::_thread_id field - JDK-8311881: jdk/javax/swing/ProgressMonitor/ProgressTest.java does not show the ProgressMonitorInputStream all the time + - JDK-8311964: Some jtreg tests failing on x86 with error 'unrecognized VM options' (C2 flags) - JDK-8312014: [s390x] TestSigInfoInHsErrFile.java Failure + - JDK-8312194: test/hotspot/jtreg/applications/ctw/modules/jdk_crypto_ec.java cannot handle empty modules + - JDK-8312218: Print additional debug information when hitting assert(in_hash) - JDK-8312320: Remove javax/rmi/ssl/SSLSocketParametersTest.sh from ProblemList - JDK-8312383: Log X509ExtendedKeyManager implementation class name in TLS/SSL connection - JDK-8312498: Thread::getState and JVM TI GetThreadState should return TIMED_WAITING virtual thread is timed parked @@ -58,6 +69,7 @@ Live versions of these release notes can be found at: - JDK-8313702: Update IANA Language Subtag Registry to Version 2023-08-02 - JDK-8313710: jcmd: typo in the documentation of JFR.start and JFR.dump - JDK-8313899: JVMCI exception Translation can fail in TranslatedException. + - JDK-8314573: G1: Heap resizing at Remark does not take existing eden regions into account - JDK-8314824: Fix serviceability/jvmti/8036666/GetObjectLockCount.java to use vm flags - JDK-8314828: Mark 3 jcmd command-line options test as vm.flagless - JDK-8314832: Few runtime/os tests ignore vm flags @@ -81,6 +93,7 @@ Live versions of these release notes can be found at: - JDK-8315998: Remove dead ClassLoaderDataGraphKlassIteratorStatic - JDK-8316002: Remove unnecessary seen_dead_loader in ClassLoaderDataGraph::do_unloading - JDK-8316053: Open some swing tests 3 + - JDK-8316138: Add GlobalSign 2 TLS root certificates - JDK-8316154: Opensource JTextArea manual tests - JDK-8316164: Opensource JMenuBar manual test - JDK-8316186: RISC-V: Remove PlatformCmpxchg<4> @@ -96,6 +109,7 @@ Live versions of these release notes can be found at: - JDK-8316696: Remove the testing base classes: IntlTest and CollatorTest - JDK-8316924: java/lang/Thread/virtual/stress/ParkALot.java times out - JDK-8316959: Improve InlineCacheBuffer pending queue management + - JDK-8317007: Add bulk removal of dead nmethods during class unloading - JDK-8317235: Remove Access API use in nmethod class - JDK-8317287: [macos14] InterJVMGetDropSuccessTest.java: Child VM: abnormal termination - JDK-8317350: Move code cache purging out of CodeCache::UnloadingScope @@ -103,6 +117,7 @@ Live versions of these release notes can be found at: - JDK-8317600: VtableStubs::stub_containing() table load not ordered wrt to stores - JDK-8317631: Refactor ChoiceFormat tests to use JUnit - JDK-8317677: Specialize Vtablestubs::entry_for() for VtableBlob + - JDK-8317809: Insertion of free code blobs into code cache can be very slow during class unloading - JDK-8317965: TestLoadLibraryDeadlock.java fails with "Unable to load native library.: expected true, was false" - JDK-8318109: Writing JFR records while a CHT has taken its lock asserts in rank checking - JDK-8318322: Update IANA Language Subtag Registry to Version 2023-10-16 @@ -119,6 +134,8 @@ Live versions of these release notes can be found at: - JDK-8319048: Monitor deflation unlink phase prolongs time to safepoint - JDK-8319153: Fix: Class is a raw type in ProcessTools - JDK-8319265: TestLoadLibraryDeadlock.java fails on windows-x64 "Unable to load b.jar" + - JDK-8319338: tools/jpackage/share/RuntimeImageTest.java fails with -XX:+UseZGC + - JDK-8319376: ParallelGC: Forwarded objects found during heap inspection - JDK-8319437: NMT should show library names in call stacks - JDK-8319567: Update java/lang/invoke tests to support vm flags - JDK-8319568: Update java/lang/reflect/exeCallerAccessTest/CallerAccessTest.java to accept vm flags @@ -147,14 +164,19 @@ Live versions of these release notes can be found at: - JDK-8320343: Generate GIF images for AbstractButton/5049549/bug5049549.java - JDK-8320349: Simplify FileChooserSymLinkTest.java by using single-window testUI - JDK-8320365: IPPPrintService.getAttributes() causes blanket re-initialisation + - JDK-8320370: NMT: Change MallocMemorySnapshot to simplify code. - JDK-8320515: assert(monitor->object_peek() != nullptr) failed: Owned monitors should not have a dead object - JDK-8320525: G1: G1UpdateRemSetTrackingBeforeRebuild::distribute_marked_bytes accesses partially unloaded klass - JDK-8320570: NegativeArraySizeException decoding >1G UTF8 bytes with non-ascii characters + - JDK-8320681: [macos] Test tools/jpackage/macosx/MacAppStoreJlinkOptionsTest.java timed out on macOS + - JDK-8320692: Null icon returned for .exe without custom icon - JDK-8320707: Virtual thread test updates - JDK-8320712: Rewrite BadFactoryTest in pure Java - JDK-8320714: java/util/Locale/LocaleProvidersRun.java and java/util/ResourceBundle/modules/visibility/VisibilityTest.java timeout after passing + - JDK-8320715: Improve the tests of test/hotspot/jtreg/compiler/intrinsics/float16 - JDK-8320924: Improve heap dump performance by optimizing archived object checks - JDK-8321075: RISC-V: UseSystemMemoryBarrier lacking proper OS support + - JDK-8321107: Add more test cases for JDK-8319372 - JDK-8321163: [test] OutputAnalyzer.getExitValue() unnecessarily logs even when process has already completed - JDK-8321182: SourceExample.SOURCE_14 comment should refer to 'switch expressions' instead of 'text blocks' - JDK-8321270: Virtual Thread.yield consumes parking permit @@ -162,7 +184,9 @@ Live versions of these release notes can be found at: - JDK-8321489: Update LCMS to 2.16 - JDK-8321713: Harmonize executeTestJvm with create[Limited]TestJavaProcessBuilder - JDK-8321718: ProcessTools.executeProcess calls waitFor before logging + - JDK-8321812: Update GC tests to use execute[Limited]TestJava - JDK-8321815: Shenandoah: gc state should be synchronized to java threads only once per safepoint + - JDK-8321925: sun/security/mscapi/KeytoolChangeAlias.java fails with "Alias <246810> does not exist" - JDK-8322239: [macos] a11y : java.lang.NullPointerException is thrown when focus is moved on the JTabbedPane - JDK-8322477: order of subclasses in the permits clause can differ between compilations - JDK-8322503: Shenandoah: Clarify gc state usage @@ -178,11 +202,14 @@ Live versions of these release notes can be found at: - JDK-8323296: java/lang/Thread/virtual/stress/GetStackTraceALotWhenPinned.java#id1 timed out - JDK-8323519: Add applications/ctw/modules to Hotspot tiered testing - JDK-8323595: is_aligned(p, alignof(OopT))) assertion fails in Jetty without compressed OOPs + - JDK-8323635: Test gc/g1/TestHumongousAllocConcurrentStart.java fails with -XX:TieredStopAtLevel=3 - JDK-8323685: PrintSystemDictionaryAtExit has mutex rank assert - JDK-8323994: gtest runner repeats test name for every single gtest assertion + - JDK-8324121: SIGFPE in PhaseIdealLoop::extract_long_range_checks - JDK-8324123: aarch64: fix prfm literal encoding in assembler - JDK-8324236: compiler/ciReplay/TestInliningProtectionDomain.java failed with RuntimeException: should only dump inline information for ... expected true, was false - JDK-8324238: [macOS] java/awt/Frame/ShapeNotSetSometimes/ShapeNotSetSometimes.java fails with the shape has not been applied msg + - JDK-8324243: Compilation failures in java.desktop module with gcc 14 - JDK-8324632: Update Zlib Data Compression Library to Version 1.3.1 - JDK-8324646: Avoid Class.forName in SecureRandom constructor - JDK-8324648: Avoid NoSuchMethodError when instantiating NativePRNG @@ -199,6 +226,7 @@ Live versions of these release notes can be found at: - JDK-8325137: com/sun/management/ThreadMXBean/ThreadCpuTimeArray.java can fail in Xcomp with out of expected range - JDK-8325203: System.exit(0) kills the launched 3rd party application - JDK-8325213: Flags introduced by configure script are not passed to ADLC build + - JDK-8325255: jdk.internal.util.ReferencedKeySet::add using wrong test - JDK-8325326: [PPC64] Don't relocate in case of allocation failure - JDK-8325372: Shenandoah: SIGSEGV crash in unnecessary_acquire due to LoadStore split through phi - JDK-8325432: enhance assert message "relocation addr must be in this section" @@ -206,6 +234,7 @@ Live versions of these release notes can be found at: - JDK-8325567: jspawnhelper without args fails with segfault - JDK-8325579: Inconsistent behavior in com.sun.jndi.ldap.Connection::createSocket - JDK-8325613: CTW: Stale method cleanup requires GC after Sweeper removal + - JDK-8325621: Improve jspawnhelper version checks - JDK-8325743: test/jdk/java/nio/channels/unixdomain/SocketOptions.java enhance user name output in error case - JDK-8325862: set -XX:+ErrorFileToStderr when executing java in containers for some container related jtreg tests - JDK-8325908: Finish removal of IntlTest and CollatorTest @@ -213,6 +242,7 @@ Live versions of these release notes can be found at: - JDK-8326006: Allow TEST_VM_FLAGLESS to set flagless mode - JDK-8326101: [PPC64] Need to bailout cleanly if creation of stubs fails when code cache is out of space - JDK-8326140: src/jdk.accessibility/windows/native/libjavaaccessbridge/AccessBridgeJavaEntryPoints.cpp ReleaseStringChars might be missing in early returns + - JDK-8326201: [S390] Need to bailout cleanly if creation of stubs fails when code cache is out of space - JDK-8326351: Update the Zlib version in open/src/java.base/share/legal/zlib.md to 1.3.1 - JDK-8326446: The User and System of jdk.CPULoad on Apple M1 are inaccurate - JDK-8326496: [test] checkHsErrFileContent support printing hserr in error case @@ -260,28 +290,58 @@ Live versions of these release notes can be found at: - JDK-8328604: remove on_aix() function - JDK-8328638: Fallback option for POST-only OCSP requests - JDK-8328702: C2: Crash during parsing because sub type check is not folded + - JDK-8328703: Illegal accesses in Java_jdk_internal_org_jline_terminal_impl_jna_linux_CLibraryImpl_ioctl0 - JDK-8328705: GHA: Cross-compilation jobs do not require build JDK - JDK-8328709: AIX os::get_summary_cpu_info support Power 10 + - JDK-8328744: Parallel: Parallel GC throws OOM before heap is fully expanded - JDK-8328776: [AIX] remove checked_vmgetinfo, use vmgetinfo directly - JDK-8328812: Update and move siphash license + - JDK-8328822: C2: "negative trip count?" assert failure in profile predicate code - JDK-8328825: Google CAInterop test failures + - JDK-8328938: C2 SuperWord: disable vectorization for large stride and scale - JDK-8328948: GHA: Restoring sysroot from cache skips the build after JDK-8326960 - JDK-8328957: Update PKCS11Test.java to not use hardcoded path - JDK-8328988: [macos14] Problem list LightweightEventTest.java which fails due to macOS bug described in JDK-8322653 + - JDK-8328997: Remove unnecessary template parameter lists in GrowableArray - JDK-8329013: StackOverflowError when starting Apache Tomcat with signed jar + - JDK-8329109: Threads::print_on() tries to print CPU time for terminated GC threads + - JDK-8329163: C2: possible overflow in PhaseIdealLoop::extract_long_range_checks() - JDK-8329213: Better validation for com.sun.security.ocsp.useget option + - JDK-8329223: Parallel: Parallel GC resizes heap even if -Xms = -Xmx - JDK-8329545: [s390x] Fix garbage value being passed in Argument Register - JDK-8329570: G1: Excessive is_obj_dead_cond calls in verification + - JDK-8329605: hs errfile generic events - move memory protections and nmethod flushes to separate sections + - JDK-8329663: hs_err file event log entry for thread adding/removing should print current thread - JDK-8329823: RISC-V: Need to sync CPU features with related JVM flags + - JDK-8329840: Fix ZPhysicalMemorySegment::_end type + - JDK-8329850: [AIX] Allow loading of different members of same shared library archive + - JDK-8329862: libjli GetApplicationHome cleanups and enhance jli tracing - JDK-8329961: Buffer overflow in os::Linux::kernel_version + - JDK-8330011: [s390x] update block-comments to make code consistent + - JDK-8330094: RISC-V: Save and restore FRM in the call stub - JDK-8330156: RISC-V: Range check auipc + signed 12 imm instruction - JDK-8330242: RISC-V: Simplify and remove CORRECT_COMPILER_ATOMIC_SUPPORT in atomic_linux_riscv.hpp + - JDK-8330275: Crash in XMark::follow_array + - JDK-8330464: hserr generic events - add entry for the before_exit calls + - JDK-8330523: Reduce runtime and improve efficiency of KeepAliveTest + - JDK-8330524: Linux ppc64le compile warning with clang in os_linux_ppc.cpp + - JDK-8330615: avoid signed integer overflows in zip_util.c readCen / hashN + - JDK-8330815: Use pattern matching for instanceof in KeepAliveCache + - JDK-8331031: unify os::dont_yield and os::naked_yield across Posix platforms - JDK-8331113: createJMHBundle.sh support configurable maven repo mirror + - JDK-8331167: UBSan enabled build fails in adlc on macOS + - JDK-8331298: avoid alignment checks in UBSAN enabled build + - JDK-8331331: :tier1 target explanation in doc/testing.md is incorrect + - JDK-8331352: error: template-id not allowed for constructor/destructor in C++20 + - JDK-8331466: Problemlist serviceability/dcmd/gc/RunFinalizationTest.java on generic-all + - JDK-8331639: [21u]: Bump GHA bootstrap JDK to 21.0.3 + - JDK-8331942: On Linux aarch64, CDS archives should be using 64K alignment by default + - JDK-8332253: Linux arm32 build fails after 8292591 Notes on individual issues: =========================== -security-libs/javax.security: +security-libs/java.security: JDK-8281658: Add a security category to the java -XshowSettings option ====================================================================== @@ -298,6 +358,19 @@ The output will include third-party security providers if they are included in the application class path or module path, and configured in the java.security file. +JDK-8316138: Add GlobalSign 2 TLS root certificates +=================================================== +The following root certificates have been added to the cacerts +truststore: + +Name: GlobalSign +Alias Name: globalsignr46 +Distinguished Name: CN=GlobalSign Root R46, O=GlobalSign nv-sa, C=BE + +Name: GlobalSign +Alias Name: globalsigne46 +Distinguished Name: CN=GlobalSign Root E46, O=GlobalSign nv-sa, C=BE + JDK-8328638: Fallback Option For POST-only OCSP Requests ======================================================== JDK-8179503, introduced in OpenJDK 17, added support for using the @@ -337,8 +410,36 @@ runtime search path to use down to the default of the linker. With this release, the option `--disable-new-dtags` is explicitly passed to the linker to avoid setting DT_RUNPATH. +JDK-8295111: dpkg appears to have problems resolving symbolically linked native libraries +========================================================================================= +The jpackage tool uses `dpkg -S` to lookup which package provides a +particular file on Debian and Ubuntu systems. However, on newer Debian +and Ubuntu systems, `dpkg -S` does not resolve symlinks. In this +OpenJDK release, jpackage now resolves symlinks before passing the +real path of the file to dpkg. + hotspot/gc: +JDK-8314573: G1: Heap resizing at Remark does not take existing eden regions into account +========================================================================================= +To comply with the settings of `-XX:MinHeapFreeRatio` and +`-XX:MaxHeapFreeRatio`, the G1 garbage collector adjusts the Java heap +size during the Remark phase, keeping the number of free regions +within these bounds. + +In earlier OpenJDK releases, Eden regions were considered to be +occupied or full for this calculation. This made the heap size +dependent on the Eden occupancy at the time the Remark phase was +run. However, after the next garbage collection, these Eden regions +would be empty. + +With this OpenJDK release, Eden regions are now considered empty or +free during the Remark phase calculation. The overall effect is that +G1 now expands the Java heap less aggressively and more +determinstically, as the number of free regions does not vary as much. +It also aligns Java heap sizing with the full GC heap sizing. +However, this may potentially lead to more garbage collections. + JDK-8315503: G1: Code root scan causes long GC pauses due to imbalanced iteration ================================================================================= The Code Root Scan phase of garbage collection finds references to diff --git a/java-21-openjdk.spec b/java-21-openjdk.spec index 9acf6dc..8743687 100644 --- a/java-21-openjdk.spec +++ b/java-21-openjdk.spec @@ -363,7 +363,7 @@ %global origin_nice OpenJDK %global top_level_dir_name %{vcstag} %global top_level_dir_name_backup %{top_level_dir_name}-backup -%global buildver 1 +%global buildver 5 %global rpmrelease 1 # Settings used by the portable build %global portablerelease 1 @@ -2513,6 +2513,11 @@ cjc.mainProgram(args) %endif %changelog +* Sun Aug 04 2024 Andrew Hughes - 1:21.0.4.0.5-0.1.ea +- Update to jdk-21.0.4+5 (EA) +- Update release notes to 21.0.4+5 +- Resolves: RHEL-45357 + * Sun Aug 04 2024 Andrew Hughes - 1:21.0.4.0.1-0.1.ea - Update to jdk-21.0.4+1 (EA) - Update release notes to 21.0.4+1 diff --git a/sources b/sources index c545d23..6b4a0ce 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz) = 97d026212363b3c83f6a04100ad7f6fdde833d16579717f8756e2b8c2eb70e144a41a330cb9ccde9c3badd37a2d54fdf4650a950ec21d8b686d545ecb2a64d30 -SHA512 (openjdk-21.0.4+1-ea.tar.xz) = 32ffb303162069a8cbdae8ce760a30642b40569fe3044a73546d0126797334a86cbc99afdcfba09d5f74119cee0feb7fc51fd09c9e1d8d047f1d950f4fc66442 +SHA512 (openjdk-21.0.4+5-ea.tar.xz) = 8018a97b988a759490276c29852e21a3b767e2e3c4e0285bd4c0ca7e7d9919c4f3ae01e6b2b70740c0e95606cce430cf04953eebc88514638b425e225eeffa46