Skip to content

Commit 9d6ace5

Browse files
committed
Merge
2 parents 0d30eb4 + 8534e92 commit 9d6ace5

1,080 files changed

Lines changed: 20225 additions & 41562 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.hgtags

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -594,3 +594,5 @@ e84d8379815ba0d3e50fb096d28c25894cb50b8c jdk-14+18
594594
9b67dd88a9313e982ec5f710a7747161bc8f0c23 jdk-14+19
595595
54ffb15c48399dd59922ee22bb592d815307e77c jdk-14+20
596596
c16ac7a2eba4e73cb4f7ee9294dd647860eebff0 jdk-14+21
597+
83810b7d12e7ff761ad3dd91f323a22dad96f108 jdk-14+22
598+
15936b142f86731afa4b1a2c0fe4a01e806c4944 jdk-14+23

doc/testing.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ <h1 class="title">Testing the JDK</h1>
4343
<li><a href="#docker-tests">Docker Tests</a></li>
4444
<li><a href="#non-us-locale">Non-US locale</a></li>
4545
<li><a href="#pkcs11-tests">PKCS11 Tests</a></li>
46+
<li><a href="#client-ui-tests">Client UI Tests</a></li>
4647
</ul></li>
4748
</ul>
4849
</nav>
@@ -207,5 +208,15 @@ <h3 id="pkcs11-tests">PKCS11 Tests</h3>
207208
<p>It is highly recommended to use the latest NSS version when running PKCS11 tests. Improper NSS version may lead to unexpected failures which are hard to diagnose. For example, sun/security/pkcs11/Secmod/AddTrustedCert.java may fail on Ubuntu 18.04 with the default NSS version in the system. To run these tests correctly, the system property <code>test.nss.lib.paths</code> is required on Ubuntu 18.04 to specify the alternative NSS lib directories. For example:</p>
208209
<pre><code>$ make test TEST=&quot;jtreg:sun/security/pkcs11/Secmod/AddTrustedCert.java&quot; JTREG=&quot;JAVA_OPTIONS=-Dtest.nss.lib.paths=/path/to/your/latest/NSS-libs&quot;</code></pre>
209210
<p>For more notes about the PKCS11 tests, please refer to test/jdk/sun/security/pkcs11/README.</p>
211+
<h3 id="client-ui-tests">Client UI Tests</h3>
212+
<p>Some Client UI tests use key sequences which may be reserved by the operating system. Usually that causes the test failure. So it is highly recommended to disable system key shortcuts prior testing. The steps to access and disable system key shortcuts for various platforms are provided below.</p>
213+
<h4 id="macos">MacOS</h4>
214+
<p>Choose Apple menu; System Preferences, click Keyboard, then click Shortcuts; select or deselect desired shortcut.</p>
215+
<p>For example, test/jdk/javax/swing/TooltipManager/JMenuItemToolTipKeyBindingsTest/JMenuItemToolTipKeyBindingsTest.java fails on MacOS because it uses <code>CTRL + F1</code> key sequence to show or hide tooltip message but the key combination is reserved by the operating system. To run the test correctly the default global key shortcut should be disabled using the steps described above, and then deselect "Turn keyboard access on or off" option which is responsible for <code>CTRL + F1</code> combination.</p>
216+
<h4 id="linux">Linux</h4>
217+
<p>Open the Activities overview and start typing Settings; Choose Settings, click Devices, then click Keyboard; set or override desired shortcut.</p>
218+
<h4 id="windows">Windows</h4>
219+
<p>Type <code>gpedit</code> in the Search and then click Edit group policy; navigate to User Configuration -&gt; Administrative Templates -&gt; Windows Components -&gt; File Explorer; in the right-side pane look for "Turn off Windows key hotkeys" and double click on it; enable or disable hotkeys.</p>
220+
<p>Note: restart is required to make the settings take effect.</p>
210221
</body>
211222
</html>

doc/testing.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -421,6 +421,35 @@ For example:
421421

422422
For more notes about the PKCS11 tests, please refer to test/jdk/sun/security/pkcs11/README.
423423

424+
### Client UI Tests
425+
426+
Some Client UI tests use key sequences which may be reserved by the operating
427+
system. Usually that causes the test failure. So it is highly recommended to disable
428+
system key shortcuts prior testing. The steps to access and disable system key shortcuts
429+
for various platforms are provided below.
430+
431+
#### MacOS
432+
Choose Apple menu; System Preferences, click Keyboard, then click Shortcuts;
433+
select or deselect desired shortcut.
434+
435+
For example, test/jdk/javax/swing/TooltipManager/JMenuItemToolTipKeyBindingsTest/JMenuItemToolTipKeyBindingsTest.java fails
436+
on MacOS because it uses `CTRL + F1` key sequence to show or hide tooltip message
437+
but the key combination is reserved by the operating system. To run the test correctly
438+
the default global key shortcut should be disabled using the steps described above, and then deselect
439+
"Turn keyboard access on or off" option which is responsible for `CTRL + F1` combination.
440+
441+
#### Linux
442+
Open the Activities overview and start typing Settings; Choose Settings, click Devices,
443+
then click Keyboard; set or override desired shortcut.
444+
445+
#### Windows
446+
Type `gpedit` in the Search and then click Edit group policy; navigate to
447+
User Configuration -> Administrative Templates -> Windows Components -> File Explorer;
448+
in the right-side pane look for "Turn off Windows key hotkeys" and double click on it;
449+
enable or disable hotkeys.
450+
451+
Note: restart is required to make the settings take effect.
452+
424453
---
425454
# Override some definitions in the global css file that are not optimal for
426455
# this document.

make/RunTests.gmk

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,11 +247,29 @@ ifeq ($(TEST_JOBS), 0)
247247
CORES_DIVIDER := 4
248248
endif
249249
endif
250+
# For some big multi-core machines with low ulimit -u setting we hit the max
251+
# threads/process limit. In such a setup the memory/cores-only-guided
252+
# TEST_JOBS config is insufficient. From experience a concurrency setting of
253+
# 14 works reasonably well for low ulimit values (<= 4096). Thus, use
254+
# divider 4096/14. For high ulimit -u values this shouldn't make a difference.
255+
ULIMIT_DIVIDER := (4096/14)
256+
PROC_ULIMIT := -1
257+
ifneq ($(OPENJDK_TARGET_OS), windows)
258+
PROC_ULIMIT := $(shell $(ULIMIT) -u)
259+
ifeq ($(PROC_ULIMIT), unlimited)
260+
PROC_ULIMIT := -1
261+
endif
262+
endif
250263
MEMORY_DIVIDER := 2048
251264
TEST_JOBS := $(shell $(AWK) \
252265
'BEGIN { \
253266
c = $(NUM_CORES) / $(CORES_DIVIDER); \
254267
m = $(MEMORY_SIZE) / $(MEMORY_DIVIDER); \
268+
u = $(PROC_ULIMIT); \
269+
if (u > -1) { \
270+
u = u / $(ULIMIT_DIVIDER); \
271+
if (u < c) c = u; \
272+
} \
255273
if (c > m) c = m; \
256274
c = c * $(TEST_JOBS_FACTOR); \
257275
c = c * $(TEST_JOBS_FACTOR_JDL); \

make/RunTestsPrebuiltSpec.gmk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,7 @@ UNZIP := unzip
175175
EXPR := expr
176176
FILE := file
177177
HG := hg
178+
ULIMIT := ulimit
178179

179180
# On Solaris gnu versions of some tools are required.
180181
ifeq ($(OPENJDK_BUILD_OS), solaris)

make/autoconf/basics.m4

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -573,6 +573,26 @@ AC_DEFUN([BASIC_REQUIRE_SPECIAL],
573573
BASIC_CHECK_NONEMPTY($1)
574574
])
575575

576+
###############################################################################
577+
# Like BASIC_REQUIRE_PROGS but also allows for bash built-ins
578+
# $1: variable to set
579+
# $2: executable name (or list of names) to look for
580+
# $3: [path]
581+
AC_DEFUN([BASIC_REQUIRE_BUILTIN_PROGS],
582+
[
583+
BASIC_SETUP_TOOL($1, [AC_PATH_PROGS($1, $2, , $3)])
584+
if test "x[$]$1" = x; then
585+
AC_MSG_NOTICE([Required tool $2 not found in PATH, checking built-in])
586+
if help $2 > /dev/null 2>&1; then
587+
AC_MSG_NOTICE([Found $2 as shell built-in. Using it])
588+
$1="$2"
589+
else
590+
AC_MSG_ERROR([Required tool $2 also not found as built-in.])
591+
fi
592+
fi
593+
BASIC_CHECK_NONEMPTY($1)
594+
])
595+
576596
###############################################################################
577597
# Setup the most fundamental tools that relies on not much else to set up,
578598
# but is used by much of the early bootstrap code.
@@ -1284,6 +1304,9 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
12841304
elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then
12851305
BASIC_REQUIRE_PROGS(ELFEDIT, elfedit)
12861306
fi
1307+
if ! test "x$OPENJDK_TARGET_OS" = "xwindows"; then
1308+
BASIC_REQUIRE_BUILTIN_PROGS(ULIMIT, ulimit)
1309+
fi
12871310
])
12881311

12891312
###############################################################################

make/autoconf/hotspot.m4

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -25,11 +25,11 @@
2525

2626
# All valid JVM features, regardless of platform
2727
VALID_JVM_FEATURES="compiler1 compiler2 zero minimal dtrace jvmti jvmci \
28-
graal vm-structs jni-check services management cmsgc epsilongc g1gc parallelgc serialgc shenandoahgc zgc nmt cds \
28+
graal vm-structs jni-check services management epsilongc g1gc parallelgc serialgc shenandoahgc zgc nmt cds \
2929
static-build link-time-opt aot jfr"
3030

3131
# Deprecated JVM features (these are ignored, but with a warning)
32-
DEPRECATED_JVM_FEATURES="trace"
32+
DEPRECATED_JVM_FEATURES="trace cmsgc"
3333

3434
# All valid JVM variants
3535
VALID_JVM_VARIANTS="server client minimal core zero custom"
@@ -326,10 +326,6 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
326326
AC_MSG_ERROR([Specified JVM feature 'jvmci' requires feature 'compiler2' or 'compiler1'])
327327
fi
328328
329-
if HOTSPOT_CHECK_JVM_FEATURE(cmsgc) && ! HOTSPOT_CHECK_JVM_FEATURE(serialgc); then
330-
AC_MSG_ERROR([Specified JVM feature 'cmsgc' requires feature 'serialgc'])
331-
fi
332-
333329
# Enable JFR by default, except for Zero, linux-sparcv9 and on minimal.
334330
if ! HOTSPOT_CHECK_JVM_VARIANT(zero); then
335331
if test "x$OPENJDK_TARGET_OS" != xaix; then
@@ -351,7 +347,8 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
351347
# Only enable ZGC on supported platforms
352348
AC_MSG_CHECKING([if zgc can be built])
353349
if (test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = "xx86_64") || \
354-
(test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = "xaarch64"); then
350+
(test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = "xaarch64") ||
351+
(test "x$OPENJDK_TARGET_OS" = "xmacosx" && test "x$OPENJDK_TARGET_CPU" = "xx86_64"); then
355352
AC_MSG_RESULT([yes])
356353
else
357354
DISABLED_JVM_FEATURES="$DISABLED_JVM_FEATURES zgc"
@@ -490,7 +487,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
490487
fi
491488
492489
# All variants but minimal (and custom) get these features
493-
NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES cmsgc g1gc parallelgc serialgc epsilongc shenandoahgc jni-check jvmti management nmt services vm-structs zgc"
490+
NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES g1gc parallelgc serialgc epsilongc shenandoahgc jni-check jvmti management nmt services vm-structs zgc"
494491
495492
# Disable CDS on AIX.
496493
if test "x$OPENJDK_TARGET_OS" = "xaix"; then

make/autoconf/spec.gmk.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -767,6 +767,7 @@ JIB_HOME:=@JIB_HOME@
767767
XCODEBUILD=@XCODEBUILD@
768768
DTRACE := @DTRACE@
769769
FIXPATH:=@FIXPATH@
770+
ULIMIT:=@ULIMIT@
770771

771772
TAR_TYPE:=@TAR_TYPE@
772773
TAR_CREATE_EXTRA_PARAM:=@TAR_CREATE_EXTRA_PARAM@

make/autoconf/toolchain.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -481,7 +481,7 @@ AC_DEFUN([TOOLCHAIN_EXTRACT_COMPILER_VERSION],
481481
COMPILER_VERSION_STRING=`$ECHO $COMPILER_VERSION_OUTPUT | \
482482
$SED -e 's/ *Copyright .*//'`
483483
COMPILER_VERSION_NUMBER=`$ECHO $COMPILER_VERSION_OUTPUT | \
484-
$SED -e 's/^.* \(@<:@1-9@:>@\.@<:@0-9.@:>@*\)@<:@^0-9.@:>@.*$/\1/'`
484+
$SED -e 's/^.* \(@<:@1-9@:>@<:@0-9@:>@*\.@<:@0-9.@:>@*\)@<:@^0-9.@:>@.*$/\1/'`
485485
elif test "x$TOOLCHAIN_TYPE" = xclang; then
486486
# clang --version output typically looks like
487487
# Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
Owner: CN=LuxTrust Global Root 2, O=LuxTrust S.A., C=LU
2+
Issuer: CN=LuxTrust Global Root 2, O=LuxTrust S.A., C=LU
3+
Serial number: a7ea6df4b449eda6a24859ee6b815d3167fbbb1
4+
Valid from: Thu Mar 05 13:21:57 GMT 2015 until: Mon Mar 05 13:21:57 GMT 2035
5+
Signature algorithm name: SHA256withRSA
6+
Subject Public Key Algorithm: 4096-bit RSA key
7+
Version: 3
8+
-----BEGIN CERTIFICATE-----
9+
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
40+
-----END CERTIFICATE-----

0 commit comments

Comments
 (0)