RELEASE NOTES FOR: 11.0.10 ==================================================================================================== Notes generated: Tue Apr 02 10:12:31 CEST 2024 Hint: Prefix bug IDs with https://bugs.openjdk.org/browse/ to reach the relevant JIRA entry. JAVA ENHANCEMENT PROPOSALS (JEP): None. RELEASE NOTES: security-libs/javax.net.ssl: JDK-8171279: Support for X25519 and X448 in TLS The named elliptic curve groups `x25519` and `x448` are now available for JSSE key agreement in TLS versions 1.0 to 1.3, with `x25519` being the most preferred of the default enabled named groups. The default ordered list is now: ``` x25519, secp256r1, secp384r1, secp521r1, x448, sect283k1, sect283r1, sect409k1, sect409r1, sect571k1, sect571r1, secp256k1, ffdhe2048, ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192 ``` The default list can be overridden using the system property *`jdk.tls.namedGroups`*. security-libs/org.ietf.jgss: JDK-6722928: Added a Default Native GSS-API Library on Windows A native GSS-API library named `sspi_bridge.dll` has been added to the JDK on the Windows platform. The library is client-side only and uses the default credentials. It will be loaded when the `sun.security.jgss.native` system property is set to "true". A user can still load a third-party native GSS-API library by setting the `sun.security.jgss.lib` system property to the appropriate path. Native GSS automatically uses cached credentials from operating systems, thus the `javax.security.auth.useSubjectCredsOnly` system property should be set to false. `com.sun.security.auth.module.Krb5LoginModule` does not call native JGSS. Avoid using `com.sun.security.auth.module.Krb5LoginModule` from JAAS config. security-libs/java.security: JDK-8213400: -groupname Option Added to keytool Key Pair Generation A new `-groupname` option has been added to `keytool -genkeypair` so that a user can specify a named group when generating a key pair. For example, `keytool -genkeypair -keyalg EC -groupname secp384r1` will generate an EC key pair by using the `secp384r1` curve. Because there might be multiple curves with the same size, using the `-groupname` option is preferred over the `-keysize` option. JDK-8218021: jarsigner Preserves POSIX File Permission and symlink Attributes When signing a file that contains POSIX file permission or symlink attributes, `jarsigner` now preserves these attributes in the newly signed file but warns that these attributes are unsigned and not protected by the signature. The same warning is printed during the `jarsigner -verify` operation for such files. Note that the `jar` tool does not read/write these attributes. This change is more visible to tools like `unzip` where these attributes are preserved. core-libs/java.time: JDK-8254177: US/Pacific-New Zone Name Removed as Part of tzdata2020b Following the JDK's update to tzdata2020b, the long-obsolete files named `pacificnew` and `systemv` have been removed. As a result, the "US/Pacific-New" Zone name declared in the `pacificnew` data file is no longer available for use. Information regarding this update can be viewed at https://mm.icann.org/pipermail/tz-announce/2020-October/000059.html ALL FIXED ISSUES, BY COMPONENT AND PRIORITY: client-libs/2d: (P2) JDK-8250605: Linux x86_32 builds fail after JDK-8249821 (P3) JDK-8244621: [macos10.15] Garbled FX printing plus CoreText warnings on Catalina when building with Xcode 11 (P3) JDK-8256557: libharfbuzz fails to link on gcc 4.4.x due to -Wl,-z,defs (P3) JDK-8247867: Upgrade to freetype 2.10.2 (P3) JDK-8245400: Upgrade to LittleCMS 2.11 (P4) JDK-8234393: [macos] printing ignores printer tray (P4) JDK-8250894: Provide a configure option to build and run against the platform libharfbuzz (P4) JDK-8249821: Separate libharfbuzz from libfontmanager client-libs/java.awt: (P2) JDK-8248532: Every time I change keyboard language at my MacBook, Java crashes (P3) JDK-7185258: [macOS] Deadlock in SunToolKit.realSync() (P3) JDK-8257242: [macOS] Java app crashes while switching input methods (P3) JDK-8253791: Issue with useAppleColor check in CSystemColors.m (P3) JDK-8249183: JVM crash in "AwtFrame::WmSize" method (P3) JDK-8232114: JVM crashed at imjpapi.dll in native code (P3) JDK-8212226: SurfaceManager throws "Invalid Image variant" for MultiResolutionImage (Windows) (P4) JDK-8252470: java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java fails on Windows (P4) JDK-8198334: java/awt/FileDialog/8003399/bug8003399.java fails in headless mode (P4) JDK-8253269: The CheckCommonColors test should provide more info on failure (P4) JDK-8252679: Two windows specific FileDIalog tests may fail on some Windows_Server_2016_Standard client-libs/javax.imageio: (P4) JDK-8255937: Better cleanup for test/jdk/javax/imageio/stream/StreamFlush.java client-libs/javax.swing: (P3) JDK-8213535: Windows HiDPI html lightweight tooltips are truncated (P4) JDK-8152332: [macosx] JFileChooser cannot be serialized on Mac OS X (P4) JDK-8240633: Memory leaks in the implementations of FileChooserUI (P4) JDK-8240690: Race condition between EDT and BasicDirectoryModel.FilesLoader.run0() core-libs: (P4) JDK-8234147: Avoid looking up standard charsets in core libraries core-libs/java.io: (P3) JDK-8237186: Fix typo in copyright header of java/io/Reader/TransferTo.java core-libs/java.lang: (P3) JDK-8251397: NPE on ClassValue.ClassValueMap.cacheArray core-libs/java.net: (P3) JDK-8217429: WebSocket over authenticating proxy fails to send Upgrade headers (P4) JDK-8243488: Add tests for set/get SendBufferSize and getReceiveBufferSize in DatagramSocket (P4) JDK-8222527: HttpClient doesn't send HOST header when tunelling HTTP/1.1 through http proxy (P4) JDK-8238579: HttpsURLConnection drops the timeout and hangs forever in read (P4) JDK-8256427: Test com/sun/jndi/dns/ConfigTests/PortUnreachable.java does not work on AIX (P4) JDK-8217976: test/jdk/java/net/httpclient/websocket/WebSocketProxyTest.java fails intermittently core-libs/java.nio.charsets: (P4) JDK-8241311: Move some charset mapping tests from closed to open core-libs/java.time: (P3) JDK-8254177: (tz) Upgrade Timezone Data to tzdata2020b (P3) JDK-8254982: (tz) Upgrade Timezone Data to tzdata2020c (P3) JDK-8255226: (tz) Upgrade Timezone Data to tzdata2020d core-libs/java.util:i18n: (P4) JDK-8252497: Incorrect numeric currency code for ROL core-libs/javax.naming: (P3) JDK-8250772: Test com/sun/jndi/ldap/NamingExceptionMessageTest.java fails intermittently with javax.naming.ServiceUnavailableException (P4) JDK-8210339: Add 10 JNDI tests to com/sun/jndi/dns/FedTests/ (P4) JDK-8208542: Add 4 JNDI tests to com/sun/jndi/dns/ListTests/ (P4) JDK-8208483: Add 5 JNDI tests to com/sun/jndi/dns/FactoryTests/ (P4) JDK-8200151: Add 8 JNDI tests to com/sun/jndi/dns/ConfigTests/ (P4) JDK-8208279: Add 8 JNDI tests to com/sun/jndi/dns/EnvTests/ (P4) JDK-8242614: cleanup duplicated test ldap server in some com/sun/jndi/ldap/ tests (P4) JDK-8251189: com/sun/jndi/ldap/LdapDnsProviderTest.java failed due to timeout core-svc/java.lang.management: (P4) JDK-8242480: Negative value may be returned by getFreeSwapSpaceSize() in the docker core-svc/tools: (P3) JDK-8254854: [cgroups v1] Metric limits not properly detected on some join controller combinations (P4) JDK-8222533: jtreg test jdk/internal/platform/cgroup/TestCgroupMetrics.java fails on SLES12.3 linux ppc64le machine globalization/locale-data: (P3) JDK-8250665: Wrong translation for the month of May in ar_JO, ar_LB and ar_SY hotspot/compiler: (P1) JDK-8254790: SIGSEGV in string_indexof_char and stringL_indexof_char intrinsics (P1) JDK-8248347: windows build broken by JDK-8243114 (P2) JDK-8229495: SIGILL in C2 generated OSR compilation (P2) JDK-8255550: x86: Assembler::cmpq(Address dst, Register src) encoding is incorrect (P3) JDK-8248845: AArch64: stack corruption after spilling vector register (P3) JDK-8247763: assert(outer->outcnt() == 2) failed: 'only phis' failure in LoopNode::verify_strip_mined() (P3) JDK-8214025: assert(t->singleton()) failed: must be a constant when ScavengeRootsInCode < 2 (P3) JDK-8245051: c1 is broken if it is compiled by gcc without -fno-lifetime-dse (P3) JDK-8249603: C1: assert(has_error == false) failed: register allocation invalid (P3) JDK-8237950: C2 compilation fails with "Live Node limit exceeded limit" during ConvI2L::Ideal optimization (P3) JDK-8255466: C2 crashes at ciObject::get_oop() const+0x0 (P3) JDK-8250825: C2 crashes with assert(field != __null) failed: missing field (P3) JDK-8248552: C2 crashes with SIGFPE due to division by zero (P3) JDK-8249607: C2: assert(!had_error) failed: bad dominance (P3) JDK-8249602: C2: assert(cnt == _outcnt) failed: no insertions allowed (P3) JDK-8249605: C2: assert(no_dead_loop) failed: dead loop detected (P3) JDK-8214242: compiler/arguments/TestScavengeRootsInCode.java fails because of missing UnlockDiagnosticVMOptions (P3) JDK-8244278: Excessive code cache flushes and sweeps (P3) JDK-8254185: Fix Code cache sweeper heuristics for JDK 11 (P3) JDK-8234863: Increase default value of MaxInlineLevel (P3) JDK-8239477: jdk/jfr/jcmd/TestJcmdStartStopDefault.java fails -XX:+VerifyOops with "verify_oop: rsi: broken oop" (P3) JDK-8252696: Loop unswitching may cause out of bound array load to be executed (P3) JDK-8251458: Parse::do_lookupswitch fails with "assert(_cnt >= 0) failed" (P3) JDK-8251535: Partial peeling at unsigned test adds incorrect loop exit check (P3) JDK-8248791: sun/util/resources/cldr/TimeZoneNamesTest.java fails with -XX:-ReduceInitialCardMarks -XX:-ReduceBulkZeroing (P3) JDK-8248226: TestCloneAccessStressGCM fails with -XX:-ReduceBulkZeroing (P3) JDK-8236944: The legVecZ operand should be limited to zmm0-zmm15 registers (P3) JDK-8249608: Vector register used by C2 compiled method corrupted at safepoint (P3) JDK-8246381: VM crashes with "Current BasicObjectLock* below than low_mark" (P4) JDK-8227647: [Graal] Test8009761.java fails due to "RuntimeException: static java.lang.Object compiler.uncommontrap.Test8009761.m3(boolean,boolean) not compiled" (P4) JDK-8161684: [testconf] Add VerifyOops' testing into compiler tiers (P4) JDK-8237524: AArch64: String.compareTo() may return incorrect result (P4) JDK-8220420: Cleanup c1_LinearScan (P4) JDK-8243619: compiler/codecache/CheckSegmentedCodeCache.java test misses -version (P4) JDK-8243617: compiler/onSpinWait/TestOnSpinWaitC1.java test uses wrong class (P4) JDK-8222286: Fix for JDK-8213419 is broken on s390 (P4) JDK-8191006: hsdis disassembler plugin does not compile with binutils 2.29+ (P4) JDK-8244819: hsdis does not compile with binutils 2.34+ (P4) JDK-8243114: Implement montgomery{Multiply,Square}intrinsics on Windows (P4) JDK-8197981: Missing return statement in __sync_val_compare_and_swap_8 (P4) JDK-8248190: PPC: Enable Power10 system and use new byte-reverse instructions (P4) JDK-8244282: test/hotspot/jtreg/compiler/intrinsics/Test8237524.java fails with --illegal-access=deny (P4) JDK-8241234: Unify monitor enter/exit runtime entries. hotspot/gc: (P2) JDK-8257701: Shenandoah: objArrayKlass metadata is not marked with chunked arrays (P3) JDK-8257641: Shenandoah: Query is_at_shenandoah_safepoint() from control thread should return false (P4) JDK-8242029: AArch64: skip G1 array copy pre-barrier if marking not active (P4) JDK-8253219: Epsilon: clean up unnecessary includes (P4) JDK-8247201: Print potential pointer value of readable stack memory in hs_err file (P4) JDK-8255457: Shenandoah: cleanup ShenandoahMarkTask (P4) JDK-8255760: Shenandoah: match constants style in ShenandoahMarkTask fallback (P4) JDK-8253226: Shenandoah: remove unimplemented ShenandoahStrDedupQueue::verify (P4) JDK-8253224: Shenandoah: ShenandoahStrDedupQueue destructor calls virtual num_queues() (P4) JDK-8252660: Shenandoah: support manageable SoftMaxHeapSize option (P4) JDK-8246434: Threads::print_on_error assumes that the heap has been set up (P4) JDK-8255269: Unsigned overflow in g1Policy.cpp hotspot/jfr: (P3) JDK-8252754: Hash code calculation of JfrStackTrace is inconsistent (P3) JDK-8250928: JFR: Improve hash algorithm for stack traces (P3) JDK-8237499: JFR: Include stack trace in the ThreadStart event (P3) JDK-8239497: SEGV in EdgeUtils::field_name_symbol(Edge const&) (P4) JDK-8252090: JFR: StreamWriterHost::write_unbuffered() stucks in an infinite loop OpenJDK (build 13.0.1+9) hotspot/jvmti: (P2) JDK-8235829: graal crashes with Zombie.java test (P3) JDK-8216324: GetClassMethods is confused by the presence of default methods in super interfaces (P3) JDK-8212160: JVMTI agent crashes with "assert(_value != 0LL) failed: resolving NULL _value" (P3) JDK-8173658: JvmtiExport::post_class_unload() is broken for non-JavaThread initiators (P3) JDK-8236124: Minimal VM slowdebug build failed after JDK-8212160 (P3) JDK-8173361: various crashes in JvmtiExport::post_compiled_method_load (P3) JDK-8224555: vmTestbase/nsk/jvmti/scenarios/contention/TC02/tc02t001/TestDescription.java failed (P4) JDK-8222072: JVMTI GenerateEvents() sends CompiledMethodLoad events to wrong jvmtiEnv (P4) JDK-8235218: Minimal VM is broken after JDK-8173361 (P4) JDK-8235456: Minimal VM is broken after JDK-8212160 hotspot/runtime: (P2) JDK-8251365: Build failure on AIX after 8250636 (P2) JDK-8249192: MonitorInfo stores raw oops across safepoints (P2) JDK-8253778: ShenandoahSafepoint::is_at_shenandoah_safepoint should not access VMThread state from other threads (P2) JDK-8253284: Zero OrderAccess barrier mappings are incorrect (P3) JDK-8251118: BiasedLocking::preserve_marks should not have a HandleMark (P3) JDK-8215583: Exclude runtime/handshake/HandshakeWalkSuspendExitTest.java (P3) JDK-8249672: Include microcode revision in features_string on x86 (P3) JDK-8218851: JVM crash in custom classloader stress test, JDK 12 & 13 (P3) JDK-8227275: Within native OOM error handling, assertions may hang the process (P3) JDK-8255065: Zero: accessor_entry misses the IRIW case (P4) JDK-8225329: -XX:+PrintBiasedLockingStatistics causes crash during initialization on Windows platforms (P4) JDK-8227006: [linux] Runtime.availableProcessors execution time increased by factor of 100 (P4) JDK-8254190: [s390] interpreter misses exception check after calling monitorenter (P4) JDK-8237512: AArch64: aarch64TestHook leaks a BufferBlob (P4) JDK-8250598: Hyper-V is detected in spite of running on host OS (P4) JDK-8243290: Improve diagnostic messages for class verification and redefinition failures (P4) JDK-8250636: iso8601_time returns incorrect offset part on MacOS (P4) JDK-8246648: issue with OperatingSystemImpl getFreeSwapSpaceSize in docker after 8242480 (P4) JDK-8250984: Memory Docker tests fail on some Linux kernels w/o cgroupv1 swap limit capabilities (P4) JDK-8239886: Minimal VM build fails after JDK-8237499 (P4) JDK-8251257: NMT: jcmd VM.native_memory scale=1 crashes target VM (P4) JDK-8254144: Non-x86 Zero builds fail with return-type warning in os_linux_zero.cpp (P4) JDK-8253375: OSX build fails with Xcode 12.0 (12A7209) (P4) JDK-8244142: some hotspot/runtime tests don't check exit code of forked JVM (P4) JDK-8254016: Test8237524 fails with -XX:-CompactStrings option (P4) JDK-8214787: Zero builds fail with "undefined JavaThread::thread_state()" (P4) JDK-8256618: Zero: Linux x86_32 build still fails (P4) JDK-8254166: Zero: return-type warning in zeroInterpreter_zero.cpp hotspot/test: (P4) JDK-8249748: gtest silently ignores bad jvm arguments (P4) JDK-8256736: Zero: GTest tests fail with "unsuppported vm variant" infrastructure: (P4) JDK-8252415: Bump update version for OpenJDK: jdk-11.0.10 infrastructure/build: (P4) JDK-8208665: Amend cross-compilation docs with qemu-debootstrap recipe (P4) JDK-8213698: Improve devkit creation and add support for linux/ppc64/ppc64le/s390x (P4) JDK-8245168: jlink should not be treated as a "small" tool (P4) JDK-8257181: s390x builds are very noisy with gc-sections messages security-libs/java.security: (P2) JDK-8225072: Add LuxTrust certificate that is expiring in March 2021 to list of allowed but expired certs (P2) JDK-8254081: java/security/cert/PolicyNode/GetPolicyQualifiers.java fails due to an expired certificate (P3) JDK-8239105: Add exception for expiring Digicert root certificates to VerifyCACerts test (P3) JDK-8258630: Add expiry exception for QuoVadis root certificate (P3) JDK-8248745: Add jarsigner and keytool tests for restricted algorithms (P3) JDK-8218021: Have jarsigner preserve posix permission attributes (P3) JDK-8213400: Support choosing group name in keytool keypair generation (P3) JDK-8250968: Symlinks attributes not preserved when using jarsigner on zip files (P4) JDK-8249176: jdk jtreg test security/infra/java/security/cert/CertPathValidator/certification/GlobalSignR6CA.java fails security-libs/javax.crypto: (P4) JDK-8216012: Infinite loop in RSA KeyPairGenerator security-libs/javax.crypto:pkcs11: (P3) JDK-8236512: PKCS11 Connection closed after Cipher.doFinal and NoPadding security-libs/javax.net.ssl: (P2) JDK-8255603: Memory/Performance regression after JDK-8210985 (P2) JDK-8171279: Support X25519 and X448 in TLS (P3) JDK-8224650: Add tests to support X25519 and X448 in TLS (P3) JDK-8243549: sun/security/ssl/CipherSuite/NamedGroupsWithCipherSuite.java failed with Unsupported signature algorithm: DSA (P3) JDK-8257545: SunJSSE FIPS regression in key exchange after JDK-8171279 11u backport security-libs/javax.security: (P3) JDK-8242335: Additional Tests for RSASSA-PSS security-libs/jdk.security: (P4) JDK-8230910: libsspi_bridge does not build on Windows 32bit security-libs/org.ietf.jgss: (P3) JDK-8225687: Newly added sspi.cpp in JDK-6722928 still contains some small errors (P3) JDK-6722928: Provide a default native GSS-API library on Windows tools/javac: (P3) JDK-8211450: UndetVar::dup is not copying the kind field to the duplicated instance (P4) JDK-8256809: Annotation processing causes NPE during flow analysis tools/jlink: (P4) JDK-8242846: Bring back test/jdk/tools/jlink/plugins/OrderResourcesPluginTest.java tools/jshell: (P3) JDK-8218287: jshell tool: input behavior unstable after 12-ea+24 on Windows