[crac] RFR: Merge jdk:jdk-24+27
Dmitry Cherepanov
dcherepanov at openjdk.org
Mon Feb 10 12:05:21 UTC 2025
On Wed, 22 Jan 2025 11:13:13 GMT, Dmitry Cherepanov <dcherepanov at openjdk.org> wrote:
> Merge jdk:jdk-24+27
>
> Attached output of `git log -1 --remerge-diff`
>
> [remerge-diff.txt](https://github.com/user-attachments/files/18504606/remerge-diff.txt)
<details>
<summary>Conflicts</summary>
commit 7ff0479664927d6c68a7be604dd277558069f18d (HEAD -> merge-jdk, dmitry-crac/merge-jdk)
Merge: e1f8f3534b1 85fedbf6680
Author: Dmitry Cherepanov <dcherepanov at azul.com>
Date: Wed Jan 22 15:02:16 2025 +0400
Merge jdk:jdk-24+27
diff --git a/src/hotspot/share/classfile/vmSymbols.hpp b/src/hotspot/share/classfile/vmSymbols.hpp
remerge CONFLICT (content): Merge conflict in src/hotspot/share/classfile/vmSymbols.hpp
index 272b3c84a64..1456138b4f2 100644
--- a/src/hotspot/share/classfile/vmSymbols.hpp
+++ b/src/hotspot/share/classfile/vmSymbols.hpp
@@ -739,17 +739,11 @@ class SerializeClosure;
template(toFileURL_signature, "(Ljava/lang/String;)Ljava/net/URL;") \
template(url_array_classloader_void_signature, "([Ljava/net/URL;Ljava/lang/ClassLoader;)V") \
\
-<<<<<<< e1f8f3534b1 (Merge jdk:jdk-24+26)
template(jdk_internal_crac_mirror_Core, "jdk/internal/crac/mirror/Core") \
template(checkpointRestoreInternal_name, "checkpointRestoreInternal") \
template(checkpointRestoreInternal_signature, "(J)Ljava/lang/String;") \
\
- /* Thread.dump_to_file jcmd */ \
-||||||| 8485cb1ca1f
- /* Thread.dump_to_file jcmd */ \
-=======
/* jcmd Thread.dump_to_file */ \
->>>>>>> 85fedbf6680 (8344607: Link Time Optimization - basic support for clang)
template(jdk_internal_vm_ThreadDumper, "jdk/internal/vm/ThreadDumper") \
template(dumpThreads_name, "dumpThreads") \
template(dumpThreadsToJson_name, "dumpThreadsToJson") \
diff --git a/src/hotspot/share/runtime/arguments.cpp b/src/hotspot/share/runtime/arguments.cpp
remerge CONFLICT (content): Merge conflict in src/hotspot/share/runtime/arguments.cpp
index 1967de217ba..86ea6a63106 100644
--- a/src/hotspot/share/runtime/arguments.cpp
+++ b/src/hotspot/share/runtime/arguments.cpp
@@ -2183,7 +2183,6 @@ jint Arguments::parse_xss(const JavaVMOption* option, const char* tail, intx* ou
return JNI_OK;
}
-<<<<<<< e1f8f3534b1 (Merge jdk:jdk-24+26)
bool Arguments::is_restore_option_set(const JavaVMInitArgs* args) {
const char* tail;
// iterate over arguments
@@ -2249,12 +2248,7 @@ bool Arguments::parse_options_for_restore(const JavaVMInitArgs* args) {
return true;
}
-jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args, bool* patch_mod_javabase, JVMFlagOrigin origin) {
-||||||| 8485cb1ca1f
-jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args, bool* patch_mod_javabase, JVMFlagOrigin origin) {
-=======
jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args, JVMFlagOrigin origin) {
->>>>>>> 85fedbf6680 (8344607: Link Time Optimization - basic support for clang)
// For match_option to return remaining or value part of option string
const char* tail;
diff --git a/src/java.base/share/classes/jdk/internal/crac/JDKContext.java b/src/java.base/share/classes/jdk/internal/crac/JDKContext.java
index fb6715d0246..8bb13f7bc68 100644
--- a/src/java.base/share/classes/jdk/internal/crac/JDKContext.java
+++ b/src/java.base/share/classes/jdk/internal/crac/JDKContext.java
@@ -32,7 +32,6 @@
import jdk.internal.crac.mirror.RestoreException;
import jdk.internal.access.JavaIOFileDescriptorAccess;
import jdk.internal.access.SharedSecrets;
-import sun.security.action.GetBooleanAction;
import java.io.File;
import java.io.FileDescriptor;
@@ -50,7 +49,7 @@ public class JDKContext implements JDKResource {
// JDKContext by itself is initialized too early when system properties are not set yet
public static class Properties {
public static final boolean COLLECT_FD_STACKTRACES =
- GetBooleanAction.privilegedGetProperty(JDKContext.COLLECT_FD_STACKTRACES_PROPERTY);
+ Boolean.getBoolean(JDKContext.COLLECT_FD_STACKTRACES_PROPERTY);
}
private WeakHashMap<FileDescriptor, Object> claimedFds;
diff --git a/src/java.base/share/classes/jdk/internal/crac/JDKFdResource.java b/src/java.base/share/classes/jdk/internal/crac/JDKFdResource.java
index a07e22189f6..f7c3f08131f 100644
--- a/src/java.base/share/classes/jdk/internal/crac/JDKFdResource.java
+++ b/src/java.base/share/classes/jdk/internal/crac/JDKFdResource.java
@@ -2,7 +2,6 @@
import jdk.internal.crac.mirror.Context;
import jdk.internal.crac.mirror.Resource;
-import sun.security.action.GetBooleanAction;
import java.util.function.Supplier;
@@ -12,7 +11,7 @@ public abstract class JDKFdResource implements JDKResource {
"Use -D" + COLLECT_FD_STACKTRACES_PROPERTY + "=true to find the source.";
private static final boolean COLLECT_FD_STACKTRACES =
- GetBooleanAction.privilegedGetProperty(COLLECT_FD_STACKTRACES_PROPERTY);
+ Boolean.getBoolean(COLLECT_FD_STACKTRACES_PROPERTY);
// No lambdas during clinit...
protected static Supplier<Exception> NO_EXCEPTION = new Supplier<Exception>() {
diff --git a/src/java.base/share/classes/jdk/internal/crac/JDKFileResource.java b/src/java.base/share/classes/jdk/internal/crac/JDKFileResource.java
index 498f7e40f98..1ce70af6399 100644
--- a/src/java.base/share/classes/jdk/internal/crac/JDKFileResource.java
+++ b/src/java.base/share/classes/jdk/internal/crac/JDKFileResource.java
@@ -4,7 +4,6 @@
import jdk.internal.crac.mirror.Resource;
import jdk.internal.crac.mirror.impl.CheckpointOpenFileException;
import jdk.internal.crac.mirror.impl.CheckpointOpenResourceException;
-import sun.security.action.GetPropertyAction;
import java.io.File;
import java.io.FileDescriptor;
@@ -21,7 +20,7 @@ public abstract class JDKFileResource extends JDKFdResource {
private static final Path[] CLASSPATH_ENTRIES;
static {
- String[] items = GetPropertyAction.privilegedGetProperty("java.class.path")
+ String[] items = System.getProperty("java.class.path")
.split(File.pathSeparator);
CLASSPATH_ENTRIES = new Path[items.length];
for (int i = 0; i < items.length; i++) {
diff --git a/src/java.base/share/classes/jdk/internal/crac/OpenResourcePolicies.java b/src/java.base/share/classes/jdk/internal/crac/OpenResourcePolicies.java
index 2aae17c4315..f9de647d4cc 100644
--- a/src/java.base/share/classes/jdk/internal/crac/OpenResourcePolicies.java
+++ b/src/java.base/share/classes/jdk/internal/crac/OpenResourcePolicies.java
@@ -2,7 +2,6 @@
import jdk.internal.crac.mirror.Context;
import jdk.internal.crac.mirror.Resource;
-import sun.security.action.GetPropertyAction;
import java.io.File;
import java.io.IOException;
@@ -55,7 +54,7 @@ private static synchronized void loadPolicies(boolean isRestore) {
// prevent loading recursively
state = isRestore ? State.LOADED_FOR_RESTORE : State.LOADED_FOR_CHECKPOINT;
- String file = GetPropertyAction.privilegedGetProperty(PROPERTY);
+ String file = System.getProperty(PROPERTY);
if (file == null) {
return;
}
diff --git a/src/java.base/share/classes/jdk/internal/crac/mirror/Core.java b/src/java.base/share/classes/jdk/internal/crac/mirror/Core.java
index ef6068af077..c64b9e51af7 100644
--- a/src/java.base/share/classes/jdk/internal/crac/mirror/Core.java
+++ b/src/java.base/share/classes/jdk/internal/crac/mirror/Core.java
@@ -31,7 +31,6 @@
import jdk.internal.crac.JDKResource;
import jdk.internal.crac.LoggerContainer;
import jdk.internal.crac.mirror.impl.*;
-import sun.security.action.GetBooleanAction;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -68,7 +67,7 @@ public class Core {
private static class FlagsHolder {
private FlagsHolder() {}
public static final boolean TRACE_STARTUP_TIME =
- GetBooleanAction.privilegedGetProperty("jdk.crac.trace-startup-time");
+ Boolean.getBoolean("jdk.crac.trace-startup-time");
}
private static final Context<Resource> globalContext = GlobalContext.createGlobalContextImpl();
diff --git a/src/java.base/share/classes/jdk/internal/crac/mirror/impl/GlobalContext.java b/src/java.base/share/classes/jdk/internal/crac/mirror/impl/GlobalContext.java
index 456872b61a0..034c7051423 100644
--- a/src/java.base/share/classes/jdk/internal/crac/mirror/impl/GlobalContext.java
+++ b/src/java.base/share/classes/jdk/internal/crac/mirror/impl/GlobalContext.java
@@ -2,13 +2,12 @@
import jdk.internal.crac.mirror.Context;
import jdk.internal.crac.mirror.Resource;
-import sun.security.action.GetPropertyAction;
public class GlobalContext {
private static final String GLOBAL_CONTEXT_IMPL_PROP = "jdk.crac.globalContext.impl";
public static Context<Resource> createGlobalContextImpl() {
- String implName = GetPropertyAction.privilegedGetProperty(GLOBAL_CONTEXT_IMPL_PROP, "");
+ String implName = System.getProperty(GLOBAL_CONTEXT_IMPL_PROP, "");
return switch (implName) {
case "BlockingOrderedContext" -> new BlockingOrderedContext<>();
case "OrderedContext" -> new OrderedContext<>();
diff --git a/src/java.base/share/classes/jdk/internal/ref/CleanerImpl.java b/src/java.base/share/classes/jdk/internal/ref/CleanerImpl.java
index bacf824fd0a..5b4016fb2b6 100644
--- a/src/java.base/share/classes/jdk/internal/ref/CleanerImpl.java
+++ b/src/java.base/share/classes/jdk/internal/ref/CleanerImpl.java
@@ -145,10 +145,12 @@ public void run() {
}
if (forceCleanup) {
ArrayList<PhantomCleanable<?>> refArr = new ArrayList<>();
- synchronized (phantomCleanableList) {
- for (var ref = phantomCleanableList.next; ref != phantomCleanableList; ref = ref.next) {
- if (ref.refersTo(null)) {
- refArr.add(ref);
+ synchronized (activeList) {
+ for (var node = activeList.head; node != null; node = node.next) {
+ for (int i = node.size - 1; i >= 0; --i) {
+ if (node.arr[i].refersTo(null)) {
+ refArr.add(node.arr[i]);
+ }
}
}
for (var ref : refArr) {
@@ -186,7 +188,7 @@ public void run() {
@Override
public synchronized void beforeCheckpoint(Context<? extends Resource> context) throws Exception {
- if (phantomCleanableList.isListEmpty()) {
+ if (activeList.isEmpty()) {
// The thread is already terminated; don't wait for anything
return;
}
diff --git a/src/java.base/share/classes/module-info.java b/src/java.base/share/classes/module-info.java
remerge CONFLICT (content): Merge conflict in src/java.base/share/classes/module-info.java
index 29e3d443905..130a560e29b 100644
--- a/src/java.base/share/classes/module-info.java
+++ b/src/java.base/share/classes/module-info.java
@@ -175,16 +175,12 @@
jdk.net,
jdk.sctp,
jdk.crypto.cryptoki;
-<<<<<<< e1f8f3534b1 (Merge jdk:jdk-24+26)
exports jdk.internal.crac to
java.rmi,
jdk.management.agent,
jdk.sctp;
-||||||| 8485cb1ca1f
-=======
exports jdk.internal.classfile.components to
jdk.jfr;
->>>>>>> 85fedbf6680 (8344607: Link Time Optimization - basic support for clang)
exports jdk.internal.foreign to
jdk.incubator.vector;
exports jdk.internal.event to
</details>
-------------
PR Comment: https://git.openjdk.org/crac/pull/188#issuecomment-2647319594
More information about the crac-dev
mailing list