diff --git a/8264805-Backport-Ahead-of-Time-Compiler.patch b/8264805-Backport-Ahead-of-Time-Compiler.patch index 55945af73dbc5ecf319b316dedea2ebc131ec1c3..4ac19f3ec5f2e753e053ebe7e12980fe3b913fb8 100644 --- a/8264805-Backport-Ahead-of-Time-Compiler.patch +++ b/8264805-Backport-Ahead-of-Time-Compiler.patch @@ -2502,7 +2502,7 @@ index 535b795fa..c9b9e2676 100644 +++ b/src/hotspot/os/windows/os_windows.cpp @@ -1,5 +1,5 @@ /* -- * Copyright (c) 1997, 2021, Oracle and/or its affiliates. All rights reserved. +- * Copyright (c) 1997, 2022, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2023, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * diff --git a/8264806-Backport-Graal-Compiler.patch b/8264806-Backport-Graal-Compiler.patch index 044f35d8c4f6a79c8639c39854ccd953e17cac63..48a10ba4e69d1ba09500761247a82ff1aeb19776 100644 --- a/8264806-Backport-Graal-Compiler.patch +++ b/8264806-Backport-Graal-Compiler.patch @@ -6075,8 +6075,8 @@ index 69ea97ddf..529e2df27 100644 --- a/make/autoconf/lib-tests.m4 +++ b/make/autoconf/lib-tests.m4 @@ -30,6 +30,38 @@ - # Minimum supported version JTREG_MINIMUM_VERSION=7.3.1 + GTEST_MINIMUM_VERSION=1.13.0 +############################################################################### +# diff --git a/Add-JBooster-Lazy-AOT-module.patch b/Add-JBooster-Lazy-AOT-module.patch index 5816e3c60d1b713b7660f63950fbde74ce86eb0d..97543e35699012366b1e673c8f9ca94b274ce260 100644 --- a/Add-JBooster-Lazy-AOT-module.patch +++ b/Add-JBooster-Lazy-AOT-module.patch @@ -1263,7 +1263,7 @@ index 8ceca7cd3..0d501e494 100644 +++ b/src/hotspot/share/prims/jvm.cpp @@ -1,5 +1,5 @@ /* -- * Copyright (c) 1997, 2021, Oracle and/or its affiliates. All rights reserved. +- * Copyright (c) 1997, 2022, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2023, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * diff --git a/Apply-TBI-to-ZGC-of-JDK17.patch b/Apply-TBI-to-ZGC-of-JDK17.patch index e8d050d5aedbcf04210804284f80dd0cfb0b3164..a960c1c0005216b0c06e7f706a409f5e0fd0ede9 100644 --- a/Apply-TBI-to-ZGC-of-JDK17.patch +++ b/Apply-TBI-to-ZGC-of-JDK17.patch @@ -1584,7 +1584,7 @@ index f8900a13b..356c6ca8b 100644 +#endif while (len > 0) { const unsigned int nBytes = len > INT_MAX ? INT_MAX : (unsigned int)len; - const ssize_t num_written = (ssize_t)os::write(_fd, buf, nBytes); + const bool successful_write = os::write(_fd, buf, nBytes); diff --git a/src/hotspot/share/prims/jni.cpp b/src/hotspot/share/prims/jni.cpp index cd0115248..41e946563 100644 --- a/src/hotspot/share/prims/jni.cpp diff --git a/Backport-Important-Fixed-Issues.patch b/Backport-Important-Fixed-Issues.patch index 3d453ba0e1449b48d56ca5d19f64e320af7ffa41..af236a8ba8151585a6d1befd271d65f7c9c1abab 100644 --- a/Backport-Important-Fixed-Issues.patch +++ b/Backport-Important-Fixed-Issues.patch @@ -141,19 +141,6 @@ index 52e6ab86c..88a9289b9 100644 if (j >= 1024) { st->print_cr(UINT64_FORMAT " k", uint64_t(j) / 1024); } else { -diff --git a/src/hotspot/os/linux/os_perf_linux.cpp b/src/hotspot/os/linux/os_perf_linux.cpp -index 7c42379a0..958848dc8 100644 ---- a/src/hotspot/os/linux/os_perf_linux.cpp -+++ b/src/hotspot/os/linux/os_perf_linux.cpp -@@ -847,7 +847,7 @@ SystemProcessInterface::SystemProcesses::ProcessIterator::ProcessIterator() { - bool SystemProcessInterface::SystemProcesses::ProcessIterator::initialize() { - _dir = os::opendir("/proc"); - _entry = NULL; -- _valid = true; -+ _valid = _dir != nullptr; // May be null if /proc is not accessible. - next_process(); - - return true; diff --git a/src/hotspot/share/c1/c1_globals.hpp b/src/hotspot/share/c1/c1_globals.hpp index 7564b2b8a..41d4607f8 100644 --- a/src/hotspot/share/c1/c1_globals.hpp @@ -190,7 +177,7 @@ index 98ab42022..56ed8a5dd 100644 * * This code is free software; you can redistribute it and/or modify it @@ -750,12 +750,14 @@ bool PSScavenge::should_attempt_scavenge() { - // changed, decide if that test should also be changed. + size_t avg_promoted = (size_t) policy->padded_average_promoted_in_bytes(); size_t promotion_estimate = MIN2(avg_promoted, young_gen->used_in_bytes()); - bool result = promotion_estimate < old_gen->free_in_bytes(); @@ -206,19 +193,6 @@ index 98ab42022..56ed8a5dd 100644 if (young_gen->used_in_bytes() < (size_t) policy->padded_average_promoted_in_bytes()) { log_trace(ergo)(" padded_promoted_average is greater than maximum promotion = " SIZE_FORMAT, young_gen->used_in_bytes()); } -diff --git a/src/hotspot/share/jfr/recorder/checkpoint/types/jfrTypeSet.cpp b/src/hotspot/share/jfr/recorder/checkpoint/types/jfrTypeSet.cpp -index 78d6ab48f..a72c15a49 100644 ---- a/src/hotspot/share/jfr/recorder/checkpoint/types/jfrTypeSet.cpp -+++ b/src/hotspot/share/jfr/recorder/checkpoint/types/jfrTypeSet.cpp -@@ -228,7 +228,7 @@ static int write_klass(JfrCheckpointWriter* writer, KlassPtr klass, bool leakp) - writer->write(cld != NULL ? cld_id(cld, leakp) : 0); - writer->write(mark_symbol(klass, leakp)); - writer->write(package_id(klass, leakp)); -- writer->write(get_flags(klass)); -+ writer->write(klass->modifier_flags()); - writer->write(klass->is_hidden()); - return 1; - } diff --git a/src/hotspot/share/opto/c2compiler.cpp b/src/hotspot/share/opto/c2compiler.cpp index 13de7651e..411733814 100644 --- a/src/hotspot/share/opto/c2compiler.cpp @@ -661,191 +635,6 @@ index 050f27e72..197f3238b 100644 return; if ( comboBox.isEditable() ) { -diff --git a/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicDirectoryModel.java b/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicDirectoryModel.java -index 34c53ca91..81972a052 100644 ---- a/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicDirectoryModel.java -+++ b/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicDirectoryModel.java -@@ -98,10 +98,13 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - * This method is used to interrupt file loading thread. - */ - public void invalidateFileCache() { -- if (filesLoader != null) { -- filesLoader.loadThread.interrupt(); -- filesLoader.cancelRunnables(); -- filesLoader = null; -+ synchronized (this) { -+ if (filesLoader != null) { -+ filesLoader.loadThread.interrupt(); -+ filesLoader = null; -+ // Increment fetch ID to invalidate pending DoChangeContents -+ fetchID.incrementAndGet(); -+ } - } - } - -@@ -156,14 +159,15 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - if (currentDirectory == null) { - return; - } -- if (filesLoader != null) { -- filesLoader.loadThread.interrupt(); -- filesLoader.cancelRunnables(); -- } - -- int fid = fetchID.incrementAndGet(); -- setBusy(true, fid); -- filesLoader = new FilesLoader(currentDirectory, fid); -+ synchronized (this) { -+ if (filesLoader != null) { -+ filesLoader.loadThread.interrupt(); -+ } -+ int fid = fetchID.incrementAndGet(); -+ setBusy(true, fid); -+ filesLoader = new FilesLoader(currentDirectory, fid); -+ } - } - - /** -@@ -276,7 +280,6 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - private final boolean fileSelectionEnabled; - private final int fid; - private final File currentDirectory; -- private volatile DoChangeContents runnable; - private final Thread loadThread; - - private FilesLoader(File currentDirectory, int fid) { -@@ -297,22 +300,20 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - } - - private void run0() { -- FileSystemView fileSystem = fileSystemView; -- - if (loadThread.isInterrupted()) { - return; - } - -- File[] list = fileSystem.getFiles(currentDirectory, useFileHiding); -+ File[] list = fileSystemView.getFiles(currentDirectory, useFileHiding); - - if (loadThread.isInterrupted()) { - return; - } - - final Vector newFileCache = new Vector(); -- Vector newFiles = new Vector(); -+ final Vector newFiles = new Vector(); - -- // run through the file list, add directories and selectable files to fileCache -+ // Run through the file list, add directories and selectable files to fileCache - // Note that this block must be OUTSIDE of Invoker thread because of - // deadlock possibility with custom synchronized FileSystemView - for (File file : list) { -@@ -339,7 +340,7 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - - // To avoid loads of synchronizations with Invoker and improve performance we - // execute the whole block on the COM thread -- runnable = ShellFolder.invoke(new Callable() { -+ DoChangeContents runnable = ShellFolder.invoke(new Callable() { - public DoChangeContents call() { - int newSize = newFileCache.size(); - int oldSize = fileCache.size(); -@@ -388,7 +389,7 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - } - if (!fileCache.equals(newFileCache)) { - if (loadThread.isInterrupted()) { -- cancelRunnables(); -+ return null; - } - return new DoChangeContents(newFileCache, 0, fileCache, 0, fid); - } -@@ -400,12 +401,6 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - SwingUtilities.invokeLater(runnable); - } - } -- -- private void cancelRunnables() { -- if (runnable != null) { -- runnable.cancel(); -- } -- } - } - - -@@ -514,13 +509,13 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - private final class DoChangeContents implements Runnable { - private final List addFiles; - private final List remFiles; -- private boolean doFire = true; - private final int fid; -- private int addStart = 0; -- private int remStart = 0; -+ private final int addStart; -+ private final int remStart; - -- DoChangeContents(List addFiles, int addStart, List remFiles, -- int remStart, int fid) { -+ private DoChangeContents(List addFiles, int addStart, -+ List remFiles, int remStart, -+ int fid) { - this.addFiles = addFiles; - this.addStart = addStart; - this.remFiles = remFiles; -@@ -528,31 +523,31 @@ public class BasicDirectoryModel extends AbstractListModel implements Pr - this.fid = fid; - } - -- synchronized void cancel() { -- doFire = false; -- } -- -- public synchronized void run() { -- if (fetchID.get() == fid && doFire) { -- int remSize = (remFiles == null) ? 0 : remFiles.size(); -- int addSize = (addFiles == null) ? 0 : addFiles.size(); -- synchronized(fileCache) { -- if (remSize > 0) { -- fileCache.removeAll(remFiles); -- } -- if (addSize > 0) { -- fileCache.addAll(addStart, addFiles); -- } -- files = null; -- directories = null; -- } -- if (remSize > 0 && addSize == 0) { -- fireIntervalRemoved(BasicDirectoryModel.this, remStart, remStart + remSize - 1); -- } else if (addSize > 0 && remSize == 0 && addStart + addSize <= fileCache.size()) { -- fireIntervalAdded(BasicDirectoryModel.this, addStart, addStart + addSize - 1); -- } else { -- fireContentsChanged(); -+ @Override -+ public void run() { -+ if (fetchID.get() != fid) { -+ return; -+ } -+ final int remSize = (remFiles == null) ? 0 : remFiles.size(); -+ final int addSize = (addFiles == null) ? 0 : addFiles.size(); -+ final int cacheSize; -+ synchronized (fileCache) { -+ if (remSize > 0) { -+ fileCache.removeAll(remFiles); -+ } -+ if (addSize > 0) { -+ fileCache.addAll(addStart, addFiles); - } -+ files = null; -+ directories = null; -+ cacheSize = fileCache.size(); -+ } -+ if (remSize > 0 && addSize == 0) { -+ fireIntervalRemoved(BasicDirectoryModel.this, remStart, remStart + remSize - 1); -+ } else if (addSize > 0 && remSize == 0 && addStart + addSize <= cacheSize) { -+ fireIntervalAdded(BasicDirectoryModel.this, addStart, addStart + addSize - 1); -+ } else { -+ fireContentsChanged(); - } - } - } diff --git a/src/java.desktop/share/classes/javax/swing/text/html/CSS.java b/src/java.desktop/share/classes/javax/swing/text/html/CSS.java index c14b5a126..311f172b8 100644 --- a/src/java.desktop/share/classes/javax/swing/text/html/CSS.java @@ -2020,127 +1809,6 @@ index 000000000..830216f0d + passFailJFrame.awaitAndCheck(); + } +} -diff --git a/test/jdk/jdk/jfr/api/consumer/TestRecordedClass.java b/test/jdk/jdk/jfr/api/consumer/TestRecordedClass.java -new file mode 100644 -index 000000000..19c637049 ---- /dev/null -+++ b/test/jdk/jdk/jfr/api/consumer/TestRecordedClass.java -@@ -0,0 +1,115 @@ -+/* -+ * Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+package jdk.jfr.api.consumer; -+ -+import java.lang.reflect.Modifier; -+import java.util.List; -+ -+import jdk.jfr.Event; -+import jdk.jfr.Recording; -+import jdk.jfr.consumer.RecordedClass; -+import jdk.jfr.consumer.RecordedEvent; -+import jdk.test.lib.jfr.Events; -+ -+/** -+ * @test -+ * @summary Verifies methods of RecordedClass -+ * @key jfr -+ * @requires vm.hasJFR -+ * @library /test/lib -+ * @run main/othervm jdk.jfr.api.consumer.TestRecordedClass -+ */ -+public class TestRecordedClass { -+ -+ static class TestEvent extends Event { -+ Class typeA; -+ Class typeB; -+ } -+ -+ private static class TypeA { -+ } -+ -+ public final static class TypeB { -+ } -+ -+ public static void main(String[] args) throws Exception { -+ try (Recording recording = new Recording()) { -+ recording.start(); -+ TestEvent event = new TestEvent(); -+ event.typeA = TypeA.class; -+ event.typeB = TypeB.class; -+ event.commit(); -+ recording.stop(); -+ -+ List events = Events.fromRecording(recording); -+ Events.hasEvents(events); -+ for (RecordedEvent recordedEvent : events) { -+ RecordedClass typeA = recordedEvent.getClass("typeA"); -+ RecordedClass typeB = recordedEvent.getClass("typeB"); -+ assertModifiers(typeA, TypeA.class); -+ assertModifiers(typeB, TypeB.class); -+ assertName(typeA, TypeA.class); -+ assertName(typeB, TypeB.class); -+ assertClassLoader(typeA, TypeA.class.getClassLoader()); -+ assertClassLoader(typeB, TypeB.class.getClassLoader()); -+ assertId(typeA); -+ assertId(typeB); -+ if (typeA.getId() == typeB.getId()) { -+ throw new Exception("Same ID for different classes"); -+ } -+ } -+ } -+ } -+ -+ private static void assertId(RecordedClass recordedClass) throws Exception { -+ long id = recordedClass.getId(); -+ if (id < 1 || id >= 1024 * 1024) { -+ throw new Exception("Expected class ID to be above 1 and below 1 M"); -+ } -+ } -+ -+ private static void assertClassLoader(RecordedClass recordedClass, ClassLoader classLoader) throws Exception { -+ String expected = classLoader.getClass().getName(); -+ String actual = recordedClass.getClassLoader().getType().getName(); -+ if (!expected.equals(actual)) { -+ throw new Exception("Expected class loader to be " + expected + ", was " + actual); -+ } -+ } -+ -+ private static void assertName(RecordedClass recordedClass, Class clazz) throws Exception { -+ String className = clazz.getClass().getName(); -+ if (className.equals(recordedClass.getName())) { -+ throw new Exception("Expected class to be named " + className); -+ } -+ } -+ -+ private static void assertModifiers(RecordedClass recordedClass, Class clazz) throws Exception { -+ int modifiers = clazz.getModifiers(); -+ if (modifiers != recordedClass.getModifiers()) { -+ String expected = Modifier.toString(modifiers); -+ String actual = Modifier.toString(recordedClass.getModifiers()); -+ throw new Exception("Expected modifier to be '" + expected + "', was '" + actual + "'"); -+ } -+ } -+} diff --git a/test/jdk/sun/jvmstat/monitor/MonitoredVm/ConcurrentGetMonitoredHost.java b/test/jdk/sun/jvmstat/monitor/MonitoredVm/ConcurrentGetMonitoredHost.java new file mode 100644 index 000000000..a6049f6a0 diff --git a/Huawei-Fix-JBooster-file-issue-caused-by-os-write-change.patch b/Huawei-Fix-JBooster-file-issue-caused-by-os-write-change.patch new file mode 100644 index 0000000000000000000000000000000000000000..b59b1f3cdc137550b5796848fcab0f0202775a96 --- /dev/null +++ b/Huawei-Fix-JBooster-file-issue-caused-by-os-write-change.patch @@ -0,0 +1,84 @@ +From bc5f9fe895849d80d69ef273703e17d2e3ffc968 Mon Sep 17 00:00:00 2001 +Subject: Fix JBooster file issue caused by os::write change + +--- + .../share/jbooster/net/serializationWrappers.cpp | 15 +++++++++------ + .../share/jbooster/net/serializationWrappers.hpp | 2 +- + test/hotspot/gtest/jbooster/test_net.cpp | 6 +----- + test/hotspot/gtest/jbooster/test_util.cpp | 4 ++-- + 4 files changed, 13 insertions(+), 14 deletions(-) + +diff --git a/src/hotspot/share/jbooster/net/serializationWrappers.cpp b/src/hotspot/share/jbooster/net/serializationWrappers.cpp +index 13db948f6..58310e976 100644 +--- a/src/hotspot/share/jbooster/net/serializationWrappers.cpp ++++ b/src/hotspot/share/jbooster/net/serializationWrappers.cpp +@@ -385,12 +385,15 @@ int FileWrapper::deserialize(MessageBuffer& buf) { + JB_RETURN(buf.deserialize_ref_no_meta(size_to_recv)); + + // content (use low-level APIs to save a memcpy) +- uint32_t left = size_to_recv; +- do { +- uint32_t write_size = (uint32_t) os::write(_fd, buf.cur_buf_ptr(), left); +- buf.skip_cur_offset(write_size); +- left -= write_size; +- } while (left > 0); ++ if (!os::write(_fd, buf.cur_buf_ptr(), size_to_recv)) { ++ int e = errno; ++ errno = 0; ++ guarantee(e != 0, "sanity"); ++ log_warning(jbooster, serialization)("Fail to write file \"%s\": errno=%s(\"%s\") .", ++ _file_path, os::errno_name(e), os::strerror(e)); ++ JB_RETURN(e); ++ } ++ buf.skip_cur_offset(size_to_recv); + + // update status + _handled_file_size += size_to_recv; +diff --git a/src/hotspot/share/jbooster/net/serializationWrappers.hpp b/src/hotspot/share/jbooster/net/serializationWrappers.hpp +index cc7f96c15..02816fcc5 100644 +--- a/src/hotspot/share/jbooster/net/serializationWrappers.hpp ++++ b/src/hotspot/share/jbooster/net/serializationWrappers.hpp +@@ -253,7 +253,7 @@ public: + + bool is_null() const { return _file_size == MessageConst::NULL_PTR; } + bool is_file_all_handled() const { +- assert(_file_size >= _handled_file_size, "sanity"); ++ guarantee(_file_size >= _handled_file_size, "sanity"); + return _handled_once && _file_size == _handled_file_size; + } + +diff --git a/test/hotspot/gtest/jbooster/test_net.cpp b/test/hotspot/gtest/jbooster/test_net.cpp +index a2c45be5e..9eb29fc3a 100644 +--- a/test/hotspot/gtest/jbooster/test_net.cpp ++++ b/test/hotspot/gtest/jbooster/test_net.cpp +@@ -348,11 +348,7 @@ static void create_test_file_for_file_wrapper(const char* file_name) { + int fd = os::open(file_name, O_BINARY | O_WRONLY | O_CREAT | O_EXCL | O_TRUNC, 0666); + ASSERT_TRUE(fd >= 0); + ASSERT_EQ(errno, 0); +- uint32_t left = mem_size; +- do { +- uint32_t write_size = (uint32_t) os::write(fd, mem + mem_size - left, left); +- left -= write_size; +- } while (left > 0); ++ ASSERT_TRUE(os::write(fd, mem, mem_size)); + os::close(fd); + FREE_C_HEAP_ARRAY(char, mem); + } +diff --git a/test/hotspot/gtest/jbooster/test_util.cpp b/test/hotspot/gtest/jbooster/test_util.cpp +index ab7fd9b39..cd65804be 100644 +--- a/test/hotspot/gtest/jbooster/test_util.cpp ++++ b/test/hotspot/gtest/jbooster/test_util.cpp +@@ -46,8 +46,8 @@ static const char* get_type_name(T t) { + } + + static void write_file(const char* file_path, const char* content) { +- int fd = os::open(file_path, O_BINARY | O_WRONLY | O_CREAT, 0666);; +- os::write(fd, content, strlen(content) + 1); ++ int fd = os::open(file_path, O_BINARY | O_WRONLY | O_CREAT, 0666); ++ ASSERT_TRUE(os::write(fd, content, strlen(content) + 1)); + os::close(fd); + } + +-- +2.23.0 + diff --git a/KAE-zip-Features.patch b/KAE-zip-Features.patch index f4c16a8e696861093a9d10fd8308b27e4538b448..a68b802c665d171ecd722470fed5ef1c5993011c 100644 --- a/KAE-zip-Features.patch +++ b/KAE-zip-Features.patch @@ -87,7 +87,7 @@ index bb09d8cf8..8b03ea56e 100644 ifeq ($(LIBZIP_CAN_USE_MMAP), true) @@ -139,10 +169,11 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBZIP, \ - DISABLED_WARNINGS_clang := format-nonliteral, \ + DISABLED_WARNINGS_clang := format-nonliteral deprecated-non-prototype, \ LDFLAGS := $(LDFLAGS_JDKLIB) \ $(call SET_SHARED_LIBRARY_ORIGIN), \ - LIBS_unix := -ljvm -ljava $(LIBZ_LIBS), \ diff --git a/add-version-txt.patch b/add-version-txt.patch index dabf1c16e7dc29daa16c6091a68da0aa7df789f0..be2d555d0cd681c1ec02654da51a49477ac760c7 100644 --- a/add-version-txt.patch +++ b/add-version-txt.patch @@ -13,7 +13,7 @@ index 000000000..b717bafbe --- /dev/null +++ b/version.txt @@ -0,0 +1 @@ -+17.0.12.0.13 ++17.0.13.0.13 -- 2.19.0 diff --git a/jdk-updates-jdk17u-jdk-17.0.12+7.tar.gz b/jdk-updates-jdk17u-jdk-17.0.13+11.tar.gz similarity index 85% rename from jdk-updates-jdk17u-jdk-17.0.12+7.tar.gz rename to jdk-updates-jdk17u-jdk-17.0.13+11.tar.gz index 47278351786ff9bed1a711afcc5af03c8129c6ea..0b1eca37b1f3299ab57054d1285c13c810eb0164 100644 Binary files a/jdk-updates-jdk17u-jdk-17.0.12+7.tar.gz and b/jdk-updates-jdk17u-jdk-17.0.13+11.tar.gz differ diff --git a/openjdk-17.spec b/openjdk-17.spec index 8d50eb2eb4152d96bdaa94d0ed51b9c740ac54f4..0a708bc3905fb154082afd9eef35148325811cba 100644 --- a/openjdk-17.spec +++ b/openjdk-17.spec @@ -161,7 +161,7 @@ # Used via new version scheme. JDK 17 was # GA'ed in March 2021 => 21.9 %global vendor_version_string 21.9 -%global securityver 12 +%global securityver 13 # buildjdkver is usually same as %%{majorver}, # but in time of bootstrap of next jdk, it is majorver-1, # and this it is better to change it here, on single place @@ -187,7 +187,7 @@ %global origin_nice OpenJDK %global top_level_dir_name %{origin} %global minorver 0 -%global buildver 7 +%global buildver 11 # priority must be 8 digits in total; up to openjdk 1.8, we were using 18..... so when we moved to 11, we had to add another digit %if %is_system_jdk %global priority %( printf '%02d%02d%02d%02d' %{majorver} %{minorver} %{securityver} %{buildver} ) @@ -903,7 +903,7 @@ Provides: java-src%{?1} = %{epoch}:%{version}-%{release} Name: java-%{javaver}-%{origin} Version: %{newjavaver}.%{buildver} -Release: 5 +Release: 0 # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons # and this change was brought into RHEL-4. java-1.5.0-ibm packages @@ -1036,6 +1036,9 @@ Patch63: Backport-of-8333088-ubsan-shenandoahAdaptiveHeuristi.patch Patch64: Backport-of-8339351-Remove-duplicate-line-in-FileMap.patch Patch65: Backport-of-8330191-Fix-typo-in-precompiled.hpp.patch Patch66: Backport-of-8337712-Wrong-javadoc-in-java.util.Date-.patch + +#17.0.13 +Patch67: Huawei-Fix-JBooster-file-issue-caused-by-os-write-change.patch ############################################ # # LoongArch64 specific patches @@ -1317,6 +1320,7 @@ pushd %{top_level_dir_name} %patch64 -p1 %patch65 -p1 %patch66 -p1 +%patch67 -p1 popd # openjdk %endif @@ -1883,6 +1887,17 @@ cjc.mainProgram(args) -- the returns from copy_jdk_configs.lua should not affect %changelog +* Wed Oct 16 2024 Benshuai5D - 1:17.0.13.11-0 +- modify 8264805-Backport-Ahead-of-Time-Compiler.patch +- modify 8264806-Backport-Graal-Compiler.patch +- modify Add-JBooster-Lazy-AOT-module.patch +- modify Apply-TBI-to-ZGC-of-JDK17.patch +- modify Backport-Important-Fixed-Issues.patch +- modify KAE-zip-Features.patch +- modify add-version-txt.patch +- add Huawei-Fix-JBooster-file-issue-caused-by-os-write-change.patch +- update to 17.0.13+11(ga) + * Mon Oct 14 2024 Autistic_boyya - 1:17.0.12.7-5 - Add Backport-of-JDK-8305680.patch - Add Backport-of-JDK-8305937.patch