Skip to content

Commit 732e435

Browse files
committed
openjdk17: update to 17.0.9+9
1 parent de24ac4 commit 732e435

20 files changed

+305
-282
lines changed

build/openjdk17/build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
. ../../lib/build.sh
1818

1919
PROG=openjdk
20-
VER=17.0.8.1+1
20+
VER=17.0.9+9
2121
PKG=runtime/java/openjdk17
2222
SUMMARY="openjdk ${VER%%.*}"
2323
DESC="Open-source implementation of the seventeenth edition of the "

build/openjdk17/patches/README.txt

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,76 @@ Most patches -p0
77

88
JDK17:
99

10+
17.0.9
11+
12+
Much rework around safefetch. Removed illumos-port-12.patch, and
13+
removed the is_safefetch_fault() block entirely. (Looked at the
14+
Windows port, and that block was removed there in this release. It
15+
wasn't present at all in other platforms.) Copied the new assembler
16+
src/hotspot/os_cpu/linux_x86/safefetch_linux_x86_64.S to
17+
src/hotspot/os_cpu/solaris_x86/safefetch_solaris_x86_64.S, see
18+
illumos-port-17.patch
19+
20+
In os_solaris_x86.cpp, the end of print_context() is now split off
21+
into print_tos_pc()
22+
23+
We need an implementation of os::can_trim_native_heap() and
24+
trim_native_heap(); simply add a stub in os_solaris.inline.hpp to
25+
return false like pretty much every other platform except linux does.
26+
27+
17.0.8
28+
29+
Reinstate make/data/charsetmapping/stdcs-solaris, removal broke the
30+
build.
31+
See illumos-port-16.patch
32+
33+
Cleanup: remove TAR_CREATE_FILE_PARAM TAR_CREATE_EXTRA_PARAM
34+
35+
Cleanup: Removed another STLPORT reference
36+
37+
17.0.7
38+
39+
Minor patch noise. Removed an STLPORT patch.
40+
41+
17.0.6
42+
43+
Minor patch noise.
44+
45+
17.0.5
46+
47+
A number of functions centralised into os_posix
48+
49+
17.0.4
50+
51+
Build broken by https://www.illumos.org/issues/14418. That did 2
52+
things - (1) exposed memcntl and meminfo by default, and (2) changed
53+
the signature for memcntl from caddr_t to void so there's a
54+
mismatch. The fix adopted is to modify the internal java signature for
55+
memcntl to the new version, which still allows builds on older
56+
releases as the old definition in sys/mman.h was effectively invisible
57+
there.
58+
59+
60+
Remove some unnecessary patches
61+
src/java.base/unix/native/libjli/java_md.h
62+
- new comment is good
63+
src/java.desktop/unix/native/common/awt/fontpath.c
64+
- shouldn't need to check for SunOS 5.8/5.9
65+
Remove HS_DTRACE_WORKAROUND_TAIL_CALL_BUG, the bug it works around
66+
was fixed in 2008
67+
Remove remaining SUNPRO and related MLIB_NO_LIBSUNMATH checks
68+
src/java.desktop/unix/native/common/awt/X11Color.c
69+
- the complexity is over 20 years old and no longer relevant
70+
make/autoconf/flags-cflags.m4
71+
- adding -DTRIMMED is useless
72+
src/java.desktop/unix/native/libawt_xawt/awt/awt_InputMethod.c
73+
- unnecessary on illumos and current Solaris (and my S10 system too)
74+
use the 64-bit rdtsc variant
75+
76+
17.0.2
77+
78+
illumos-port-15.patch to fix the broken ld check
79+
1080
17-35
1181

1282
RC1, no changes

build/openjdk17/patches/illumos-port-1.patch

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--- a/src/hotspot/os/solaris/os_solaris.cpp Thu May 28 11:43:31 2020
22
+++ b/src/hotspot/os/solaris/os_solaris.cpp Thu May 28 13:53:16 2020
3-
@@ -2785,52 +2785,35 @@
3+
@@ -2751,52 +2751,35 @@
44
bool os::Solaris::_synchronization_initialized;
55

66
void os::Solaris::synchronization_init() {
@@ -78,7 +78,7 @@
7878
}
7979
_synchronization_initialized = true;
8080
}
81-
@@ -3634,9 +3616,6 @@
81+
@@ -3581,9 +3563,6 @@
8282
// 3. Tx resumes from park
8383

8484

@@ -88,7 +88,7 @@
8888
// utility to compute the abstime argument to timedwait.
8989
// TODO-FIXME: switch from compute_abstime() to unpackTime().
9090

91-
@@ -3650,24 +3629,8 @@
91+
@@ -3597,24 +3576,8 @@
9292
jlong seconds = millis / 1000;
9393
jlong max_wait_period;
9494

build/openjdk17/patches/illumos-port-12.patch

Lines changed: 0 additions & 35 deletions
This file was deleted.

build/openjdk17/patches/illumos-port-13.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ diff --git a/src/hotspot/os/solaris/os_solaris.cpp b/src/hotspot/os/solaris/os_s
1818
index 894958e7c..5273ea961 100644
1919
--- a/src/hotspot/os/solaris/os_solaris.cpp
2020
+++ b/src/hotspot/os/solaris/os_solaris.cpp
21-
@@ -1592,37 +1592,6 @@ void os::print_jni_name_suffix_on(outputStream* st, int args_size) {
21+
@@ -1584,37 +1584,6 @@ void os::print_jni_name_suffix_on(outputStream* st, int args_size) {
2222
// no suffix required
2323
}
2424

@@ -56,7 +56,7 @@ index 894958e7c..5273ea961 100644
5656
////////////////////////////////////////////////////////////////////////////////
5757
// Virtual Memory
5858

59-
@@ -2909,7 +2909,6 @@ jint os::init_2(void) {
59+
@@ -2906,7 +2875,6 @@ jint os::init_2(void) {
6060
FLAG_SET_ERGO_IF_DEFAULT(UseNUMAInterleaving, true);
6161
}
6262

build/openjdk17/patches/illumos-port-14.patch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ diff --git a/src/hotspot/os_cpu/solaris_x86/os_solaris_x86.cpp b/src/hotspot/os_
77
index c5a72c791..9d9ab5618 100644
88
--- a/src/hotspot/os_cpu/solaris_x86/os_solaris_x86.cpp
99
+++ b/src/hotspot/os_cpu/solaris_x86/os_solaris_x86.cpp
10-
@@ -382,8 +382,11 @@ bool PosixSignals::pd_hotspot_signal_handler(int sig, siginfo_t* info,
10+
@@ -377,8 +377,11 @@ bool PosixSignals::pd_hotspot_signal_handler(int sig, siginfo_t* info,
1111
// Handle ALL stack overflow variations here
1212
if (sig == SIGSEGV && info->si_code == SEGV_ACCERR) {
1313
address addr = (address) info->si_addr;
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
--- a/make/autoconf/toolchain.m4 Sat Jul 3 15:56:43 2021
2+
+++ b/make/autoconf/toolchain.m4 Sat Jul 3 16:11:51 2021
3+
@@ -228,7 +228,11 @@
4+
# Linux x86_64 needs higher binutils after 8265783
5+
# (this really is a dependency on as version, but we take ld as a check for a general binutils version)
6+
if test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
7+
- TOOLCHAIN_MINIMUM_LD_VERSION_gcc="2.25"
8+
+ if test "x$OPENJDK_TARGET_OS" = xsolaris; then
9+
+ TOOLCHAIN_MINIMUM_LD_VERSION_gcc=""
10+
+ else
11+
+ TOOLCHAIN_MINIMUM_LD_VERSION_gcc="2.25"
12+
+ fi
13+
fi
14+
15+
# Use indirect variable referencing
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
--- /dev/null Sat Mar 4 12:15:07 2023
2+
+++ a/make/data/charsetmapping/stdcs-solaris Sat Mar 4 12:03:56 2023
3+
@@ -0,0 +1,25 @@
4+
+#
5+
+# generate these charsets into sun.nio.cs
6+
+#
7+
+Big5
8+
+Big5_Solaris
9+
+Big5_HKSCS # always together with Big5
10+
+EUC_CN
11+
+EUC_KR
12+
+EUC_JP
13+
+EUC_JP_LINUX
14+
+EUC_JP_Open
15+
+EUC_TW
16+
+GBK
17+
+ISO_8859_11
18+
+ISO_8859_3
19+
+ISO_8859_6
20+
+ISO_8859_8
21+
+Johab
22+
+PCK
23+
+TIS_620
24+
+JIS_X_0201
25+
+JIS_X_0208
26+
+JIS_X_0212
27+
+JIS_X_0208_Solaris
28+
+JIS_X_0212_Solaris
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
Copied verbatim from the linux_x86 version
2+
3+
--- /dev/null Thu Oct 19 11:20:19 2023
4+
+++ b/src/hotspot/os_cpu/solaris_x86/safefetch_solaris_x86_64.S Thu Oct 19 11:02:38 2023
5+
@@ -0,0 +1,58 @@
6+
+#
7+
+# Copyright (c) 2022 SAP SE. All rights reserved.
8+
+# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
9+
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
10+
+#
11+
+# This code is free software; you can redistribute it and/or modify it
12+
+# under the terms of the GNU General Public License version 2 only, as
13+
+# published by the Free Software Foundation.
14+
+#
15+
+# This code is distributed in the hope that it will be useful, but WITHOUT
16+
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
17+
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
18+
+# version 2 for more details (a copy is included in the LICENSE file that
19+
+# accompanied this code).
20+
+#
21+
+# You should have received a copy of the GNU General Public License version
22+
+# 2 along with this work; if not, write to the Free Software Foundation,
23+
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
24+
+#
25+
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
26+
+# or visit www.oracle.com if you need additional information or have any
27+
+# questions.
28+
+#
29+
+ .globl SafeFetch32_impl
30+
+ .globl SafeFetchN_impl
31+
+ .globl _SafeFetch32_fault
32+
+ .globl _SafeFetchN_fault
33+
+ .globl _SafeFetch32_continuation
34+
+ .globl _SafeFetchN_continuation
35+
+
36+
+ .text
37+
+
38+
+
39+
+ # Support for int SafeFetch32(int* address, int defaultval);
40+
+ #
41+
+ # %rdi : address
42+
+ # %esi : defaultval
43+
+ .type SafeFetch32_impl,@function
44+
+SafeFetch32_impl:
45+
+_SafeFetch32_fault:
46+
+ movl (%rdi), %eax # load target value, may fault
47+
+ ret
48+
+_SafeFetch32_continuation:
49+
+ movl %esi, %eax # return default
50+
+ ret
51+
+
52+
+ # Support for intptr_t SafeFetchN(intptr_t* address, intptr_t defaultval);
53+
+ #
54+
+ # %rdi : address
55+
+ # %rsi : defaultval
56+
+ .type SafeFetchN_impl,@function
57+
+SafeFetchN_impl:
58+
+_SafeFetchN_fault:
59+
+ movq (%rdi), %rax # load target value, may fault
60+
+ ret
61+
+_SafeFetchN_continuation:
62+
+ movq %rsi, %rax # return default
63+
+ ret

build/openjdk17/patches/illumos-port-6.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ It "fixes" AIX because that's using the xlc toolchain.
66

77
--- a/src/hotspot/share/runtime/os.cpp Wed Aug 12 16:38:30 2020
88
+++ b/src/hotspot/share/runtime/os.cpp Thu Aug 13 19:44:36 2020
9-
@@ -155,7 +155,7 @@
9+
@@ -148,7 +148,7 @@
1010
// No offset when dealing with UTC
1111
time_t UTC_to_local = 0;
1212
if (!utc) {
@@ -15,7 +15,7 @@ It "fixes" AIX because that's using the xlc toolchain.
1515
UTC_to_local = -(time_struct.tm_gmtoff);
1616
#elif defined(_WINDOWS)
1717
long zone;
18-
@@ -166,7 +166,7 @@
18+
@@ -159,7 +159,7 @@
1919
#endif
2020

2121
// tm_gmtoff already includes adjustment for daylight saving

0 commit comments

Comments
 (0)