[crac] RFR: Merge jdk:jdk-25+22

Timofei Pushkin tpushkin at openjdk.org
Thu Jul 17 09:23:23 UTC 2025


On Wed, 16 Jul 2025 18:11:43 GMT, Dmitry Cherepanov <dcherepanov at openjdk.org> wrote:

> Merge with jdk-25+22
> 
> Attaching output of `--diff-merges=remerge`
> 
> <details>
> 
> <summary>jdk-25+20</summary>
> 
> 
> commit 28128cb4e515074ced2dfd4cd371bebe4cdc4dbc
> Merge: 698225b6594 953eef4f113
> Author: Dmitry Cherepanov <dcherepanov at azul.com>
> Date:   Tue Jul 15 11:33:36 2025 +0400
> 
>     Merge with jdk-25+20
> 
> diff --git a/src/hotspot/cpu/x86/globals_x86.hpp b/src/hotspot/cpu/x86/globals_x86.hpp
> remerge CONFLICT (content): Merge conflict in src/hotspot/cpu/x86/globals_x86.hpp
> index 2d380144da1..103fde55fb3 100644
> --- a/src/hotspot/cpu/x86/globals_x86.hpp
> +++ b/src/hotspot/cpu/x86/globals_x86.hpp
> @@ -192,7 +192,6 @@ define_pd_global(intx, InitArrayShortSize, 8*BytesPerLong);
>               "Turn off JVM mitigations related to Intel micro code "        \
>               "mitigations for the Intel JCC erratum")                       \
>                                                                              \
> -<<<<<<< 698225b6594 (Merge jdk:jdk-25+19)
>    product(ccstr, CPUFeatures, nullptr, "CPU feature set, "                  \
>        "use -XX:CPUFeatures=0xnumber with -XX:CRaCCheckpointTo when you "    \
>        "get an error during -XX:CRaCRestoreFrom on a different machine; "    \
> @@ -205,18 +204,16 @@ define_pd_global(intx, InitArrayShortSize, 8*BytesPerLong);
>                                                                              \
>    product(bool, IgnoreCPUFeatures, false, RESTORE_SETTABLE | EXPERIMENTAL,  \
>        "Do not refuse to run after -XX:CRaCRestoreFrom finds out some "      \
> -      "CPU features are missing")
> -
> -=======
> +      "CPU features are missing")                                           \
> +                                                                            \
>    product(int, X86ICacheSync, -1, DIAGNOSTIC,                               \
>               "Select the X86 ICache sync mechanism: -1 = auto-select; "     \
>               "0 = none (dangerous); 1 = CLFLUSH loop; 2 = CLFLUSHOPT loop; "\
>               "3 = CLWB loop; 4 = single CPUID; 5 = single SERIALIZE. "      \
>               "Explicitly selected mechanism will fail at startup if "       \
>               "hardware does not support it.")                               \
> -             range(-1, 5)                                                   \
> -                                                                            \
> ->>>>>>> 953eef4f113 (8347337: ZGC: String dedups short-lived strings)
> +             range(-1, 5)
> +
>  // end of ARCH_FLAGS
>  
>  #endif // CPU_X86_GLOBALS_X86...

src/hotspot/cpu/x86/globals_x86.hpp line 205:

> 203:              "Explicitly selected mechanism will fail at startup if "       \
> 204:              "hardware does not support it.")                               \
> 205:              range(-1, 5)

In the conflict resolution:

-             range(-1, 5)                                                   \
-                                                                            \
->>>>>>> 953eef4f113 (8347337: ZGC: String dedups short-lived strings)
+             range(-1, 5)
+

Would be better to leave the two ``, otherwise there will be conflicts later.

src/hotspot/os/linux/os_linux.cpp line 5159:

> 5157:   if (count != 13) return -1;
> 5158:   if (user_sys_cpu_time) {
> 5159:     return ((jlong)sys_time + (jlong)user_time) * (1000000000 / clock_tics_per_sec);

Cannot comment on a proper line but `clock_tics_per_sec` has been removed completely by https://bugs.openjdk.org/browse/JDK-8354811 while in the merge its definition and initialization has been preserved. Can't we remove it completely too?

src/hotspot/share/runtime/abstract_vm_version.hpp line 134:

> 132:   static uint64_t features()           { return _features; }
> 133:   static const char* features_string() { return _features_string; }
> 134: 

IIUC this newline was added during a conflict resolution but there's no such new line in the original changes. Although it will be added in JDK 15+23 anyway...

Not functionally important, just truing to minimize the difference.

-------------

PR Review Comment: https://git.openjdk.org/crac/pull/244#discussion_r2212685734
PR Review Comment: https://git.openjdk.org/crac/pull/244#discussion_r2212720781
PR Review Comment: https://git.openjdk.org/crac/pull/244#discussion_r2212790821


More information about the crac-dev mailing list