diff --git a/jdk/test/Makefile b/jdk/test/Makefile index 20bd55408d05bf777504c7b0050ecf96e45f850f..5d5d04a0136bc161a34099e807476a5466a1a9b4 100644 --- a/jdk/test/Makefile +++ b/jdk/test/Makefile @@ -37,11 +37,14 @@ GET= AWK = awk CAT = cat CD = cd +CHMOD = chmod CP = cp CUT = cut +DIRNAME = dirname ECHO = echo EGREP = egrep EXPAND = expand +FIND = find MKDIR = mkdir PWD = pwd SED = sed @@ -234,6 +237,35 @@ ifeq ($(OS_NAME),solaris) endif endif +# Temp file to hold list of shared library files possibly needing execute +# permissions at runtime. +SHARED_LIBRARY_LIST=$(ABS_TEST_OUTPUT_DIR)/shared_libraries.txt + +# Macro that may change execute permissions on library files and check for them. +# Files in repositories should not really have execute permissions, however +# windows dll files require execute permission. Adding execute permission +# may happen automatically on windows when using certain versions of mercurial +# but it cannot be guaranteed. And blindly adding execute permission might +# be seen as a mercurial 'change', so we avoid adding execute permission to +# repository files. Testing from a plain source tree may need the chmod a+x. +# Used on select directories. +define CheckLibraryExecutePermissions # dir +$(MKDIR) -p `$(DIRNAME) $(SHARED_LIBRARY_LIST)` +$(RM) $(SHARED_LIBRARY_LIST) +$(FIND) $1 -name \*.dll -o -name \*.DLL -o -name \*.so > $(SHARED_LIBRARY_LIST) +if [ -s $(SHARED_LIBRARY_LIST) -a ! -d $(TEST_ROOT)/../.hg ] ; then \ + $(ECHO) "$(CHMOD) a+x `$(CAT) $(SHARED_LIBRARY_LIST)`"; \ + $(CHMOD) a+x `$(CAT) $(SHARED_LIBRARY_LIST)`; \ +fi +if [ -s $(SHARED_LIBRARY_LIST) ] ; then \ + for i in `$(CAT) $(SHARED_LIBRARY_LIST)` ; do \ + if [ ! -x $${i} ] ; then \ + $(ECHO) "WARNING: File does not have execute permission: $${i}"; \ + fi; \ + done; \ +fi +endef + # Expect JPRT to set JPRT_ARCHIVE_BUNDLE (path to zip bundle for results) ARCHIVE_BUNDLE = $(ABS_TEST_OUTPUT_DIR)/ARCHIVE_BUNDLE.zip ifdef JPRT_ARCHIVE_BUNDLE @@ -242,7 +274,7 @@ endif # How to create the test bundle (pass or fail, we want to create this) # Follow command with ";$(BUNDLE_UP_AND_EXIT)", so it always gets executed. -ZIP_UP_RESULTS = ( $(MKDIR) -p `dirname $(ARCHIVE_BUNDLE)` \ +ZIP_UP_RESULTS = ( $(MKDIR) -p `$(DIRNAME) $(ARCHIVE_BUNDLE)` \ && $(CD) $(ABS_TEST_OUTPUT_DIR) \ && $(ZIP) -q -r $(ARCHIVE_BUNDLE) . ) SUMMARY_TXT = $(shell $(GETMIXEDPATH) "$(ABS_TEST_OUTPUT_DIR)")/JTreport/text/summary.txt @@ -483,6 +515,7 @@ jdk_nio1: java/nio/file JDK_ALL_TARGETS += jdk_nio2 jdk_nio2: java/nio/Buffer java/nio/ByteOrder \ java/nio/channels java/nio/BufferPoolMXBean java/nio/MappedByteBuffer + $(call CheckLibraryExecutePermissions,java/nio/channels) $(call RunOthervmBatch) # Stable othervm testruns (minus items from PROBLEM_LIST) @@ -516,6 +549,7 @@ jdk_security2: javax/crypto com/sun/crypto # Using samevm has serious problems with these tests JDK_ALL_TARGETS += jdk_security3 jdk_security3: com/sun/security lib/security javax/security sun/security + $(call CheckLibraryExecutePermissions,sun/security) $(call RunOthervmBatch) # All security tests @@ -542,6 +576,7 @@ jdk_tools1: com/sun/jdi # Using samevm has serious problems with these tests JDK_ALL_TARGETS += jdk_tools2 jdk_tools2: com/sun/tools sun/jvmstat sun/tools tools vm com/sun/servicetag com/sun/tracing + $(call CheckLibraryExecutePermissions,tools/launcher) $(call RunOthervmBatch) # All tools tests diff --git a/jdk/test/ProblemList.txt b/jdk/test/ProblemList.txt index 12d997ca62bbdb4c1c4a08d639f6141236b8ba94..b7421375cf5e4cbf65de965195f31db1c0964332 100644 --- a/jdk/test/ProblemList.txt +++ b/jdk/test/ProblemList.txt @@ -356,10 +356,6 @@ java/lang/management/ThreadMXBean/ThreadStateTest.java generic-all # RuntimeException: Uptime of the JVM is more than 30 minutes (32 minutes). java/lang/management/RuntimeMXBean/UpTime.java generic-all -# Times out on solaris sparc occasionally, in samevm mode -java/lang/Runtime/exec/ExecWithDir.java generic-all -java/lang/ProcessBuilder/Basic.java generic-all - # Solaris sparc, samevm, java.lang.Exception: Read from closed pipe hangs java/lang/Runtime/exec/SleepyCat.java generic-all @@ -431,6 +427,15 @@ java/lang/ClassLoader/deadlock/TestCrossDelegate.sh generic-all # jdk_management +# Filed 6951284, fails on linux 64bit Fedora 9, peak thread count differences +java/lang/management/ThreadMXBean/ResetPeakThreadCount.java generic-all + +# Started failing on linux and solaris (filed 6950927) +# com.sun.tools.attach.AttachNotSupportedException: +# Unable to open socket file: +# target process not responding or HotSpot VM not loaded +sun/management/jmxremote/bootstrap/JvmstatCountersTest.java generic-all + # Fails on linux: KO: StringMonitor notification missed or not emitted javax/management/monitor/NonComparableAttributeValueTest.java generic-all @@ -935,6 +940,19 @@ java/rmi/server/UnicastRemoteObject/unexportObject/UnexportLeak.java generic-all # jdk_security +# Filed 6951285, not sure how often this fails, last was Linux 64bit Fedora 9 +sun/security/krb5/auto/MaxRetries.java generic-all + +# Filed 6950930, fails on windows 32bit c1 and windows 64bit +sun/security/krb5/auto/IgnoreChannelBinding.java windows-all + +# Filed 6950931, failing on all windows systems +sun/security/tools/jarsigner/crl.sh windows-all + +# Filed 6950929, only seemed to fail on solaris sparcv9 (-d64) +# Failed on Linux -server 32bit too, making generic +sun/security/krb5/auto/BadKdc4.java generic-all + # Failing on Solaris i586, 3/9/2010, not a -samevm issue (jdk_security3) sun/security/pkcs11/Secmod/AddPrivateKey.java solaris-i586 sun/security/pkcs11/ec/ReadCertificates.java solaris-i586 @@ -986,12 +1004,6 @@ sun/security/krb5/auto/ok-as-delegate-xrealm.sh generic-all # Fails on Windows 2000, ExceptionInInitializerError sun/security/mscapi/AccessKeyStore.sh generic-all -# Fails on Windows 2000, UnsatisfiedLinkError: libnspr4.dll: Access is denied -sun/security/pkcs11/KeyAgreement/TestDH.java generic-all - -# Fails on Windows 2000, UnsatisfiedLinkError: libnspr4.dll: Access is denied -sun/security/pkcs11/fips/ClientJSSEServerJSSE.java generic-all - # Fails on Solaris 10, KrbException: Additional pre-authentication required (25) sun/security/krb5/auto/basic.sh generic-all @@ -1022,10 +1034,6 @@ com/sun/crypto/provider/Cipher/DES/PaddingTest.java generic-all # Othervm, sparc, NoRouteToHostException: Cannot assign requested address sun/security/ssl/javax/net/ssl/NewAPIs/SessionCacheSizeTests.java generic-all -# ProviderException: sun.security.pkcs11.wrapper.PKCS11Exception: CKR_DEVICE_ERROR -# Does not seem to run on windows machines? dll missing? -sun/security/pkcs11/rsa/TestKeyPairGenerator.java generic-all - # Times out on windows X64, othervm mode # Solaris sparc and sparcv9 -server, timeout sun/security/ssl/javax/net/ssl/NewAPIs/SessionTimeOutTests.java generic-all @@ -1041,7 +1049,6 @@ sun/security/ssl/sanity/ciphersuites/CheckCipherSuites.java generic-all sun/security/tools/jarsigner/oldsig.sh generic-all # Various failures on Linux Fedora 9 X64, othervm mode -# Does not seem to run on windows machines? dll missing? sun/security/ssl/sanity/interop/ClientJSSEServerJSSE.java generic-all # Linux i586 -server, buffer too short to hold shared secret? @@ -1078,9 +1085,6 @@ java/security/Signature/TestInitSignWithMyOwnRandom.java generic-all java/security/UnresolvedPermission/AccessorMethods.java generic-all java/security/UnresolvedPermission/Equals.java generic-all -# Do not seem to run on windows machines? dll missing? -sun/security/krb5/auto/IgnoreChannelBinding.java windows-all - # Fails on OpenSolaris, missing classes, slow on Solaris sparc sun/security/ec/TestEC.java generic-all @@ -1088,65 +1092,12 @@ sun/security/ec/TestEC.java generic-all sun/security/mscapi/IsSunMSCAPIAvailable.sh windows-x64 sun/security/mscapi/RSAEncryptDecrypt.sh windows-x64 -# Do not seem to run on windows machines? dll missing? -sun/security/pkcs11/Cipher/ReinitCipher.java windows-all -sun/security/pkcs11/Cipher/TestRSACipher.java windows-all -sun/security/pkcs11/Cipher/TestRSACipherWrap.java windows-all -sun/security/pkcs11/Cipher/TestSymmCiphers.java windows-all -sun/security/pkcs11/Cipher/TestSymmCiphersNoPad.java windows-all - -# Do not seem to run on windows machines? dll missing? -sun/security/pkcs11/ec/ReadCertificates.java windows-all -sun/security/pkcs11/ec/ReadPKCS12.java windows-all -sun/security/pkcs11/ec/TestCurves.java windows-all -sun/security/pkcs11/ec/TestECDH.java windows-all -sun/security/pkcs11/ec/TestECDSA.java windows-all -sun/security/pkcs11/ec/TestECGenSpec.java windows-all -sun/security/pkcs11/ec/TestKeyFactory.java windows-all -sun/security/pkcs11/fips/TrustManagerTest.java windows-all - -# Do not seem to run on windows machines? dll missing? -sun/security/pkcs11/KeyAgreement/TestShort.java windows-all -sun/security/pkcs11/KeyGenerator/DESParity.java windows-all - # Exception in test solaris-sparc -client -server, no windows -sun/security/pkcs11/KeyGenerator/TestKeyGenerator.java windows-all solaris-all - -# Do not seem to run on windows machines? dll missing? -sun/security/pkcs11/KeyStore/Basic.sh windows-all -sun/security/pkcs11/KeyStore/ClientAuth.sh windows-all +sun/security/pkcs11/KeyGenerator/TestKeyGenerator.java solaris-all # Solaris sparc client, fails to compile? sun/security/pkcs11/KeyStore/SecretKeysBasic.sh solaris-all -# Do not seem to run on windows machines? dll missing? -sun/security/pkcs11/Mac/ReinitMac.java windows-all -sun/security/pkcs11/MessageDigest/ByteBuffers.java windows-all -sun/security/pkcs11/MessageDigest/DigestKAT.java windows-all -sun/security/pkcs11/MessageDigest/ReinitDigest.java windows-all -sun/security/pkcs11/Provider/ConfigQuotedString.sh windows-all -sun/security/pkcs11/Provider/Login.sh windows-all -sun/security/pkcs11/rsa/KeyWrap.java windows-all -sun/security/pkcs11/rsa/TestCACerts.java windows-all -sun/security/pkcs11/rsa/TestKeyFactory.java windows-all -sun/security/pkcs11/rsa/TestSignatures.java windows-all -sun/security/pkcs11/SampleTest.java windows-all -sun/security/pkcs11/Secmod/AddPrivateKey.java windows-all -sun/security/pkcs11/Secmod/AddTrustedCert.java windows-all -sun/security/pkcs11/Secmod/Crypto.java windows-all -sun/security/pkcs11/Secmod/GetPrivateKey.java windows-all -sun/security/pkcs11/Secmod/JksSetPrivateKey.java windows-all -sun/security/pkcs11/Secmod/TrustAnchors.java windows-all -sun/security/pkcs11/SecureRandom/Basic.java windows-all -sun/security/pkcs11/Serialize/SerializeProvider.java windows-all -sun/security/pkcs11/Signature/ByteBuffers.java windows-all -sun/security/pkcs11/Signature/ReinitSignature.java windows-all -sun/security/pkcs11/Signature/TestDSA.java windows-all -sun/security/pkcs11/tls/TestKeyMaterial.java windows-all -sun/security/pkcs11/tls/TestMasterSecret.java windows-all -sun/security/pkcs11/tls/TestPremaster.java windows-all -sun/security/pkcs11/tls/TestPRF.java windows-all - # Fails on OpenSolaris java.net.BindException: Address already in use sun/security/pkcs11/sslecc/ClientJSSEServerJSSE.java generic-all @@ -1164,6 +1115,58 @@ sun/security/tools/jarsigner/emptymanifest.sh windows-all sun/security/tools/keytool/importreadall.sh solaris-all sun/security/tools/keytool/selfissued.sh solaris-all +# This is a problem with JPRT not being able to run these tests due to a dll +# permission problem that has not been figured out: +sun/security/pkcs11/SampleTest.java windows-i586 +sun/security/pkcs11/Secmod/AddPrivateKey.java windows-i586 +sun/security/pkcs11/Cipher/ReinitCipher.java windows-i586 +sun/security/pkcs11/Cipher/TestRSACipher.java windows-i586 +sun/security/pkcs11/Cipher/TestRSACipherWrap.java windows-i586 +sun/security/pkcs11/Cipher/TestSymmCiphers.java windows-i586 +sun/security/pkcs11/Cipher/TestSymmCiphersNoPad.java windows-i586 +sun/security/pkcs11/KeyAgreement/TestShort.java windows-i586 +sun/security/pkcs11/KeyGenerator/DESParity.java windows-i586 +sun/security/pkcs11/KeyGenerator/TestKeyGenerator.java windows-i586 +sun/security/pkcs11/KeyStore/Basic.sh windows-i586 +sun/security/pkcs11/KeyStore/ClientAuth.sh windows-i586 +sun/security/pkcs11/Mac/ReinitMac.java windows-i586 +sun/security/pkcs11/MessageDigest/ByteBuffers.java windows-i586 +sun/security/pkcs11/MessageDigest/DigestKAT.java windows-i586 +sun/security/pkcs11/MessageDigest/ReinitDigest.java windows-i586 +sun/security/pkcs11/Provider/ConfigQuotedString.sh windows-i586 +sun/security/pkcs11/Provider/Login.sh windows-i586 +sun/security/pkcs11/Sampl/pkcs11/Secmod/AddPrivateKey.java windows-i586 +sun/security/pkcs11/Secmod/AddTrustedCert.java windows-i586 +sun/security/pkcs11/Secmod/Crypto.java windows-i586 +sun/security/pkcs11/Secmod/GetPrivateKey.java windows-i586 +sun/security/pkcs11/Secmod/JksSetPrivateKey.java windows-i586 +sun/security/pkcs11/Secmod/TrustAnchors.java windows-i586 +sun/security/pkcs11/SecureRandom/Basic.java windows-i586 +sun/security/pkcs11/SecureRandom/TestDeserialization.java windows-i586 +sun/security/pkcs11/Serialize/SerializeProvider.java windows-i586 +sun/security/pkcs11/Signature/ByteBuffers.java windows-i586 +sun/security/pkcs11/Signature/ReinitSignature.java windows-i586 +sun/security/pkcs11/Signature/TestDSA.java windows-i586 +sun/security/pkcs11/Signature/TestRSAKeyLength.java windows-i586 +sun/security/pkcs11/ec/ReadCertificates.java windows-i586 +sun/security/pkcs11/ec/ReadPKCS12.java windows-i586 +sun/security/pkcs11/ec/TestCurves.java windows-i586 +sun/security/pkcs11/ec/TestECDH.java windows-i586 +sun/security/pkcs11/ec/TestECDSA.java windows-i586 +sun/security/pkcs11/ec/TestECGenSpec.java windows-i586 +sun/security/pkcs11/ec/TestKeyFactory.java windows-i586 +sun/security/pkcs11/fips/ClientJSSEServerJSSE.java windows-i586 +sun/security/pkcs11/fips/TrustManagerTest.java windows-i586 +sun/security/pkcs11/rsa/KeyWrap.java windows-i586 +sun/security/pkcs11/rsa/TestCACerts.java windows-i586 +sun/security/pkcs11/rsa/TestKeyFactory.java windows-i586 +sun/security/pkcs11/rsa/TestKeyPairGenerator.java windows-i586 +sun/security/pkcs11/rsa/TestSignatures.java windows-i586 +sun/security/pkcs11/tls/TestKeyMaterial.java windows-i586 +sun/security/pkcs11/tls/TestMasterSecret.java windows-i586 +sun/security/pkcs11/tls/TestPRF.java windows-i586 +sun/security/pkcs11/tls/TestPremaster.java windows-i586 + ############################################################################ # jdk_swing (not using samevm) @@ -1188,6 +1191,9 @@ java/text/Bidi/Bug6665028.java linux-x64 # jdk_tools +# Filed bug 6951287, failed on Linux 64bit, sometimes? +com/sun/jdi/PopAndInvokeTest.java generic-all + # Some of the tools tests kind of require "othervm" or if they don't will # always be firing up another VM anyway due to the nature of tools testing. # So most if not all tools tests are now being run with "othervm" mode. diff --git a/jdk/test/java/lang/ProcessBuilder/Basic.java b/jdk/test/java/lang/ProcessBuilder/Basic.java index 77a703dbd9a20356e129dd9d5d7f49c7462c7c7b..0b7d2a3ec04e4598019637fb86a49ca99a7ccc27 100644 --- a/jdk/test/java/lang/ProcessBuilder/Basic.java +++ b/jdk/test/java/lang/ProcessBuilder/Basic.java @@ -28,7 +28,7 @@ * 6464154 6523983 6206031 4960438 6631352 6631966 6850957 6850958 * 4947220 * @summary Basic tests for Process and Environment Variable code - * @run main/othervm Basic + * @run main/othervm/timeout=300 Basic * @author Martin Buchholz */ diff --git a/jdk/test/java/lang/Runtime/exec/ExecWithDir.java b/jdk/test/java/lang/Runtime/exec/ExecWithDir.java index 2f36e75f832599bbc7932dc64d69b9c2bf4f1e47..41f23740290c89c04a2235be4403d10b139f9f28 100644 --- a/jdk/test/java/lang/Runtime/exec/ExecWithDir.java +++ b/jdk/test/java/lang/Runtime/exec/ExecWithDir.java @@ -23,6 +23,7 @@ /* @test * @bug 4750978 + * @run main/othervm/timeout=300 ExecWithDir * @summary Ensure that we can fork-and-exec repeatedly when a new working * directory is specified */