Skip to content

Commit eeab2f1

Browse files
committed
8273229: Update OS detection code to recognize Windows Server 2022
Backport-of: c2e015c3c1a2274112bb8e6671a85bc7fb624fde
1 parent 63367e3 commit eeab2f1

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

src/hotspot/os/windows/os_windows.cpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1708,9 +1708,13 @@ void os::win32::print_windows_version(outputStream* st) {
17081708
if (is_workstation) {
17091709
st->print("10");
17101710
} else {
1711-
// distinguish Windows Server 2016 and 2019 by build number
1712-
// Windows server 2019 GA 10/2018 build number is 17763
1713-
if (build_number > 17762) {
1711+
// distinguish Windows Server by build number
1712+
// - 2016 GA 10/2016 build: 14393
1713+
// - 2019 GA 11/2018 build: 17763
1714+
// - 2022 GA 08/2021 build: 20348
1715+
if (build_number > 20347) {
1716+
st->print("Server 2022");
1717+
} else if (build_number > 17762) {
17141718
st->print("Server 2019");
17151719
} else {
17161720
st->print("Server 2016");

src/java.base/windows/native/libjava/java_props_md.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -393,7 +393,7 @@ GetJavaProperties(JNIEnv* env)
393393
GetVersionEx((OSVERSIONINFO *) &ver);
394394
majorVersion = ver.dwMajorVersion;
395395
minorVersion = ver.dwMinorVersion;
396-
/* distinguish Windows Server 2016 and 2019 by build number */
396+
/* distinguish Windows Server 2016+ by build number */
397397
buildNumber = ver.dwBuildNumber;
398398
is_workstation = (ver.wProductType == VER_NT_WORKSTATION);
399399
platformId = ver.dwPlatformId;
@@ -478,6 +478,8 @@ GetJavaProperties(JNIEnv* env)
478478
* Windows Server 2016 10 0 (!VER_NT_WORKSTATION)
479479
* Windows Server 2019 10 0 (!VER_NT_WORKSTATION)
480480
* where (buildNumber > 17762)
481+
* Windows Server 2022 10 0 (!VER_NT_WORKSTATION)
482+
* where (buildNumber > 20347)
481483
*
482484
* This mapping will presumably be augmented as new Windows
483485
* versions are released.
@@ -553,7 +555,10 @@ GetJavaProperties(JNIEnv* env)
553555
switch (minorVersion) {
554556
case 0:
555557
/* Windows server 2019 GA 10/2018 build number is 17763 */
556-
if (buildNumber > 17762) {
558+
/* Windows server 2022 build number is 20348 */
559+
if (buildNumber > 20347) {
560+
sprops.os_name = "Windows Server 2022";
561+
} else if (buildNumber > 17676) {
557562
sprops.os_name = "Windows Server 2019";
558563
} else {
559564
sprops.os_name = "Windows Server 2016";

0 commit comments

Comments
 (0)