From 25ccc524c240483bc719605e281234cc181be4f0 Mon Sep 17 00:00:00 2001 From: Peter Brunet Date: Fri, 12 Jun 2015 19:23:53 -0500 Subject: [PATCH 01/13] 8078335: Re-examine jdk.accessibility/share/classes/com/sun/java/accessibility/util location Build jdk.accessibility for all platforms Reviewed-by: erikj, dholmes --- make/Images.gmk | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/make/Images.gmk b/make/Images.gmk index 832e0b59cb0..a174a9854a4 100644 --- a/make/Images.gmk +++ b/make/Images.gmk @@ -38,7 +38,8 @@ $(eval $(call IncludeCustomExtension, , Images-pre.gmk)) ############################################################################ MAIN_MODULES += java.se java.smartcardio jdk.httpserver jdk.sctp \ - jdk.security.auth jdk.security.jgss jdk.pack200 jdk.xml.dom + jdk.security.auth jdk.security.jgss jdk.pack200 jdk.xml.dom \ + jdk.accessibility # providers PROVIDER_MODULES += jdk.charsets jdk.crypto.ec jdk.crypto.pkcs11 jdk.jvmstat jdk.localedata \ @@ -57,10 +58,6 @@ ifeq ($(OPENJDK_TARGET_OS), solaris) PROVIDER_MODULES += jdk.crypto.ucrypto endif -ifeq ($(OPENJDK_TARGET_OS), windows) - MAIN_MODULES += jdk.accessibility -endif - ifeq ($(OPENJDK_TARGET_OS), macosx) MAIN_MODULES += jdk.deploy.osx endif From b94a868049b0f30df1bd80eab48b6098ec1eb8de Mon Sep 17 00:00:00 2001 From: Erik Joelsson Date: Thu, 4 Jun 2015 18:27:42 +0200 Subject: [PATCH 02/13] 8081814: Modularize the deploy build Reviewed-by: ihse, ddehaven --- common/bin/compare.sh | 67 ++++++++++++++----------------------- make/CompileJavaModules.gmk | 12 ++++--- make/Images.gmk | 7 ++-- make/MacBundles.gmk | 12 +++---- make/Main.gmk | 28 ++++++++++------ make/MainSupport.gmk | 2 +- make/StripBinaries.gmk | 9 +++-- make/common/MakeBase.gmk | 11 ++++++ 8 files changed, 79 insertions(+), 69 deletions(-) diff --git a/common/bin/compare.sh b/common/bin/compare.sh index 8c7095296bb..ce527af478d 100644 --- a/common/bin/compare.sh +++ b/common/bin/compare.sh @@ -1188,28 +1188,11 @@ if [ "$SKIP_DEFAULT" != "true" ]; then OTHER_JDK="$OTHER/install/jdk" OTHER_JRE="$OTHER/install/jre" echo "Selecting install images for compare" - elif [ -d "$THIS/deploy/jdk" -o -d "$THIS/deploy/images/jdk" ] \ - && [ -d "$OTHER/deploy/jdk" -o -d "$OTHER/deploy/images/jdk" ]; then - if [ -d "$THIS/deploy/images/jdk" ]; then - THIS_JDK="$THIS/deploy/images/jdk" - THIS_JRE="$THIS/deploy/images/jre" - else - THIS_JDK="$THIS/deploy/jdk" - THIS_JRE="$THIS/deploy/jre" - fi - if [ -d "$OTHER/deploy/images/jdk" ]; then - OTHER_JDK="$OTHER/deploy/images/jdk" - OTHER_JRE="$OTHER/deploy/images/jre" - else - OTHER_JDK="$OTHER/deploy/jdk" - OTHER_JRE="$OTHER/deploy/jre" - fi - echo "Selecting deploy images for compare" - elif [ -d "$THIS/deploy/images/jdk" ] && [ -d "$OTHER/deploy/jdk" ]; then - THIS_JDK="$THIS/deploy/jdk" - THIS_JRE="$THIS/deploy/jre" - OTHER_JDK="$OTHER/deploy/jdk" - OTHER_JRE="$OTHER/deploy/jre" + elif [ -d "$THIS/images/jdk" ] && [ -d "$OTHER/deploy/images/jdk" ]; then + THIS_JDK="$THIS/images/jdk" + THIS_JRE="$THIS/images/jre" + OTHER_JDK="$OTHER/deploy/images/jdk" + OTHER_JRE="$OTHER/deploy/images/jre" echo "Selecting deploy images for compare" elif [ -d "$THIS/images/jdk" ] && [ -d "$OTHER/images/jdk" ]; then THIS_JDK="$THIS/images/jdk" @@ -1221,30 +1204,28 @@ if [ "$SKIP_DEFAULT" != "true" ]; then echo "No common images found." exit 1 fi + echo " $THIS_JDK" + echo " $OTHER_JDK" - if [ -d "$THIS/deploy/jdk-bundle" -o -d "$THIS/deploy/images/jdk-bundle" ] \ - && [ -d "$OTHER/deploy/jdk-bundle" -o -d "$OTHER/deploy/images/jdk-bundle" ]; then + if [ -d "$THIS/images/jdk-bundle" -o -d "$THIS/deploy/images/jdk-bundle" ] \ + && [ -d "$OTHER/images/jdk-bundle" -o -d "$OTHER/deploy/images/jdk-bundle" ]; then if [ -d "$THIS/deploy/images/jdk-bundle" ]; then THIS_JDK_BUNDLE="$THIS/deploy/images/jdk-bundle" THIS_JRE_BUNDLE="$THIS/deploy/images/jre-bundle" else - THIS_JDK_BUNDLE="$THIS/deploy/jdk-bundle" - THIS_JRE_BUNDLE="$THIS/deploy/jre-bundle" + THIS_JDK_BUNDLE="$THIS/images/jdk-bundle" + THIS_JRE_BUNDLE="$THIS/images/jre-bundle" fi if [ -d "$OTHER/deploy/images/jdk-bundle" ]; then OTHER_JDK_BUNDLE="$OTHER/deploy/images/jdk-bundle" OTHER_JRE_BUNDLE="$OTHER/deploy/images/jre-bundle" else - OTHER_JDK_BUNDLE="$OTHER/deploy/jdk-bundle" - OTHER_JRE_BUNDLE="$OTHER/deploy/jre-bundle" + OTHER_JDK_BUNDLE="$OTHER/images/jdk-bundle" + OTHER_JRE_BUNDLE="$OTHER/images/jre-bundle" fi - echo "Also comparing deploy macosx bundles" - elif [ -d "$THIS/images/jdk-bundle" ] && [ -d "$OTHER/images/jdk-bundle" ]; then - THIS_JDK_BUNDLE="$THIS/images/jdk-bundle" - THIS_JRE_BUNDLE="$THIS/images/jre-bundle" - OTHER_JDK_BUNDLE="$OTHER/images/jdk-bundle" - OTHER_JRE_BUNDLE="$OTHER/images/jre-bundle" echo "Also comparing macosx bundles" + echo " $THIS_JDK_BUNDLE" + echo " $OTHER_JDK_BUNDLE" fi if [ -d "$THIS/deploy/bundles" -o -d "$THIS/deploy/images/bundles" ] \ @@ -1262,19 +1243,21 @@ if [ "$SKIP_DEFAULT" != "true" ]; then echo "Also comparing deploy javadoc bundles" fi - if [ -d "$THIS/deploy/JavaAppletPlugin.plugin" -o -d "$THIS/deploy/images/JavaAppletPlugin.plugin" ] \ - && [ -d "$OTHER/deploy/JavaAppletPlugin.plugin" -o -d "$OTHER/deploy/images/JavaAppletPlugin.plugin" ]; then - if [ -d "$THIS/deploy/images/bundles" ]; then + if [ -d "$THIS/images/JavaAppletPlugin.plugin" ] \ + && [ -d "$OTHER/images/JavaAppletPlugin.plugin" -o -d "$OTHER/deploy/images/JavaAppletPlugin.plugin" ]; then + if [ -d "$THIS/images/JavaAppletPlugin.plugin" ]; then + THIS_DEPLOY_APPLET_PLUGIN_DIR="$THIS/images/JavaAppletPlugin.plugin" + else THIS_DEPLOY_APPLET_PLUGIN_DIR="$THIS/deploy/images/JavaAppletPlugin.plugin" - else - THIS_DEPLOY_APPLET_PLUGIN_DIR="$THIS/deploy/JavaAppletPlugin.plugin" fi - if [ -d "$OTHER/deploy/images/bundles" ]; then - OTHER_DEPLOY_APPLET_PLUGIN_DIR="$OTHER/deploy/images/JavaAppletPlugin.plugin" + if [ -d "$OTHER/images/JavaAppletPlugin.plugin" ]; then + OTHER_DEPLOY_APPLET_PLUGIN_DIR="$OTHER/images/JavaAppletPlugin.plugin" else - OTHER_DEPLOY_APPLET_PLUGIN_DIR="$OTHER/deploy/JavaAppletPlugin.plugin" + OTHER_DEPLOY_APPLET_PLUGIN_DIR="$OTHER/deploy/images/JavaAppletPlugin.plugin" fi echo "Also comparing deploy applet image" + echo " $THIS_DEPLOY_APPLET_PLUGIN_DIR" + echo " $OTHER_DEPLOY_APPLET_PLUGIN_DIR" fi if [ -d "$OTHER/images" ]; then diff --git a/make/CompileJavaModules.gmk b/make/CompileJavaModules.gmk index dfe24dfdc45..af91a283696 100644 --- a/make/CompileJavaModules.gmk +++ b/make/CompileJavaModules.gmk @@ -517,7 +517,8 @@ define SetupModuleCompilation # Find the module dependencies by parsing modules.list file $1_DEPS := $$(call FindDepsForModule, $1) - $1_CLASSPATH := $$(addprefix $(JDK_OUTPUTDIR)/modules/,$$($1_DEPS)) + $1_CLASSPATH := $$(foreach d,$$($1_DEPS), $$(if $$($$d_BIN), $$($$d_BIN), \ + $(JDK_OUTPUTDIR)/modules/$$d)) # When crypto classes are prebuilt, need to look for classes already in # output dir. ifneq ($(BUILD_CRYPTO), true) @@ -534,10 +535,10 @@ define SetupModuleCompilation $$(eval $$(call SetupJavaCompilation,$1, \ SETUP := $$(if $$($1_SETUP), $$($1_SETUP), GENERATE_JDKBYTECODE), \ SRC := $$(wildcard $$(call ALL_SRC_DIRS,$1)), \ - INCLUDES:=$(JDK_USER_DEFINED_FILTER),\ - BIN := $(JDK_OUTPUTDIR)/modules/$1, \ + INCLUDES := $(JDK_USER_DEFINED_FILTER),\ + BIN := $$(if $$($1_BIN), $$($1_BIN), $(JDK_OUTPUTDIR)/modules/$1), \ HEADERS := $(SUPPORT_OUTPUTDIR)/headers/$1, \ - ADD_JAVAC_FLAGS := $$($1_JAVAC_FLAGS))) + ADD_JAVAC_FLAGS := $$($1_ADD_JAVAC_FLAGS) $$($1_JAVAC_FLAGS))) $1: $$($1) $$($1_COPY_EXTRA) @@ -548,7 +549,8 @@ define SetupModuleCompilation # Only the javac compilation actually depends on other modules so limit # dependency declaration to that by using the *_COMPILE_TARGET variable. $$($1_COMPILE_TARGETS): $$(foreach d,$$($1_DEPS), \ - $$(call SetupJavaCompilationCompileTarget, $$d, $(JDK_OUTPUTDIR)/modules/$$d)) + $$(call SetupJavaCompilationCompileTarget, $$d, \ + $$(if $$($$d_BIN), $$($$d_BIN), $(JDK_OUTPUTDIR)/modules/$$d))) endef # Setup compilation for each module diff --git a/make/Images.gmk b/make/Images.gmk index a174a9854a4..80147ccf9d9 100644 --- a/make/Images.gmk +++ b/make/Images.gmk @@ -104,6 +104,7 @@ JIMAGE_TOOL := $(JAVA_SMALL) \ MODULES_XML += $(SRC_ROOT)/modules.xml DEPENDENCIES := $(call CacheFind, \ $(SUPPORT_OUTPUTDIR)/modules_cmds \ + $(SUPPORT_OUTPUTDIR)/modules_conf \ $(SUPPORT_OUTPUTDIR)/modules_libs) \ $(wildcard $(JDK_OUTPUTDIR)/modules/*/_*) \ $(MODULES_XML) @@ -452,10 +453,10 @@ endif # /sample dir $(eval $(call SetupCopyFiles,COPY_SAMPLES, \ - SRC := $(SUPPORT_OUTPUTDIR)/sample, \ + SRC := $(SUPPORT_OUTPUTDIR)/sample/image, \ DEST := $(JDK_IMAGE_DIR)/sample, \ - FILES := $(if $(wildcard $(SUPPORT_OUTPUTDIR)/sample), \ - $(call CacheFind,$(SUPPORT_OUTPUTDIR)/sample)))) + FILES := $(if $(wildcard $(SUPPORT_OUTPUTDIR)/sample/image), \ + $(call CacheFind,$(SUPPORT_OUTPUTDIR)/sample/image)))) JDK_TARGETS += $(COPY_SAMPLES) diff --git a/make/MacBundles.gmk b/make/MacBundles.gmk index af017d05107..a32373c8b8e 100644 --- a/make/MacBundles.gmk +++ b/make/MacBundles.gmk @@ -37,9 +37,9 @@ ifeq ($(OPENJDK_TARGET_OS), macosx) MACOSX_PLIST_SRC := $(JDK_TOPDIR)/make/data/bundle - BUNDLE_ID := $(MACOSX_BUNDLE_ID_BASE).$(JDK_MINOR_VERSION)u$(JDK_UPDATE_VERSION) + BUNDLE_ID := $(MACOSX_BUNDLE_ID_BASE).$(JDK_MINOR_VERSION)u$(JDK_UPDATE_VERSION) BUNDLE_NAME := $(MACOSX_BUNDLE_NAME_BASE) $(JDK_MINOR_VERSION) - BUNDLE_INFO := $(MACOSX_BUNDLE_NAME_BASE) $(JDK_VERSION) + BUNDLE_INFO := $(MACOSX_BUNDLE_NAME_BASE) $(JDK_VERSION) BUNDLE_PLATFORM_VERSION := $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION) BUNDLE_VERSION := $(JDK_VERSION) ifeq ($(COMPANY_NAME), N/A) @@ -56,23 +56,23 @@ ifeq ($(OPENJDK_TARGET_OS), macosx) # Copy empty directories (jre/lib/applet). $(JDK_MACOSX_BUNDLE_DIR)/Home/%: $(JDK_IMAGE_DIR)/% - $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) + $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(LOG_INFO) $(MKDIR) -p $(@D) if [ -d "$<" ]; then $(MKDIR) -p $@; else $(CP) -f -R -P '$<' '$@'; fi $(JRE_MACOSX_BUNDLE_DIR)/Home/%: $(JRE_IMAGE_DIR)/% - $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) + $(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(LOG_INFO) $(MKDIR) -p $(@D) if [ -d "$<" ]; then $(MKDIR) -p $@; else $(CP) -f -R -P '$<' '$@'; fi $(JDK_MACOSX_BUNDLE_DIR)/MacOS/libjli.dylib: - $(ECHO) Creating link $(patsubst $(OUTPUT_ROOT)/%,%,$@) + $(ECHO) Creating link $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(LOG_INFO) $(MKDIR) -p $(@D) $(RM) $@ $(LN) -s ../Home/lib/jli/libjli.dylib $@ $(JRE_MACOSX_BUNDLE_DIR)/MacOS/libjli.dylib: - $(ECHO) Creating link $(patsubst $(OUTPUT_ROOT)/%,%,$@) + $(ECHO) Creating link $(patsubst $(OUTPUT_ROOT)/%,%,$@) $(LOG_INFO) $(MKDIR) -p $(@D) $(RM) $@ $(LN) -s ../Home/lib/jli/libjli.dylib $@ diff --git a/make/Main.gmk b/make/Main.gmk index 8423864ed57..13997430bb4 100644 --- a/make/Main.gmk +++ b/make/Main.gmk @@ -140,7 +140,7 @@ JAVA_TARGETS := $(addsuffix -java, $(JAVA_MODULES)) define DeclareCompileJavaRecipe $1-java: +($(CD) $(SRC_ROOT)/make && $(MAKE) $(MAKE_ARGS) -f CompileJavaModules.gmk \ - $1 JAVA_MODULES=$1) + $1 JAVA_MODULES=$1 MODULE=$1) endef $(foreach m, $(filter-out jdk.scripting.nashorn, $(JAVA_MODULES)), \ @@ -198,13 +198,13 @@ ALL_TARGETS += hotspot ################################################################################ # Build demos and samples targets -demos: +demos-jdk: +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileDemos.gmk) -samples: +samples-jdk: +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CopySamples.gmk) -ALL_TARGETS += demos samples +ALL_TARGETS += demos-jdk samples-jdk ################################################################################ # Image targets @@ -241,11 +241,11 @@ jimages: profiles: +($(CD) $(SRC_ROOT)/make && $(MAKE) $(MAKE_ARGS) -f Images.gmk profiles) -mac-bundles: +mac-bundles-jdk: +($(CD) $(SRC_ROOT)/make && $(MAKE) $(MAKE_ARGS) -f MacBundles.gmk) ALL_TARGETS += source-tips bootcycle-images zip-security zip-source strip-binaries \ - jrtfs-jar jimages profiles mac-bundles + jrtfs-jar jimages profiles mac-bundles-jdk ################################################################################ # Docs targets @@ -359,6 +359,8 @@ else $(RMIC_TARGETS): interim-langtools interim-corba interim-rmic + $(JAVA_TARGETS): interim-langtools + import-hotspot: hotspot $(LIBS_TARGETS): import-hotspot @@ -368,7 +370,7 @@ else # The demos are currently linking to libjvm and libjava, just like all other # jdk libs, even though they don't need to. To avoid warnings, make sure they # aren't built until after libjava and libjvm are available to link to. - demos: $(JAVA_TARGETS) + demos-jdk: $(JAVA_TARGETS) # Declare dependency from -java to -gensrc $(foreach m, $(GENSRC_MODULES), $(eval $m-java: $m-gensrc)) @@ -428,7 +430,7 @@ else profiles: exploded-image strip-binaries source-tips - mac-bundles: jimages + mac-bundles-jdk: jimages bootcycle-images: jimages @@ -489,9 +491,15 @@ $(foreach m, $(COPY_MODULES), $(eval $m: $m-copy)) ALL_MODULE_TARGETS := $(sort $(GENSRC_MODULES) $(JAVA_MODULES) \ $(GENDATA_MODULES) $(LIBS_MODULES) $(LAUNCHER_MODULES) $(COPY_MODULES)) +demos: demos-jdk + +samples: samples-jdk + # The "exploded image" is a locally runnable JDK in $(BUILD_OUTPUT)/jdk. exploded-image: $(ALL_MODULE_TARGETS) +mac-bundles: mac-bundles-jdk + # The $(BUILD_OUTPUT)/images directory contain the resulting deliverables, # and in line with this, our targets for creating these are named *-image[s]. @@ -514,8 +522,8 @@ test-image: prepare-test-image test-image-hotspot-jtreg-native \ all-images: product-images test-image docs-image ALL_TARGETS += buildtools gensrc gendata copy java rmic libs launchers \ - jdk.jdwp.agent-gensrc $(ALL_MODULE_TARGETS) exploded-image \ - product-images docs-image test-image all-images + jdk.jdwp.agent-gensrc $(ALL_MODULE_TARGETS) demos samples exploded-image \ + mac-bundles product-images docs-image test-image all-images ################################################################################ diff --git a/make/MainSupport.gmk b/make/MainSupport.gmk index bbd7b817df8..3564f8bc794 100644 --- a/make/MainSupport.gmk +++ b/make/MainSupport.gmk @@ -65,7 +65,7 @@ define Clean-java @$(PRINTF) "Cleaning java $(if $1,for $(strip $1) )..." @$(PRINTF) "\n" $(LOG_DEBUG) $(RM) -r $(JDK_OUTPUTDIR)/modules/$(strip $1) - $(RM) -r $(SUPPORT_OUTPUTDIR)/misc/$(strip $1) + $(RM) -r $(SUPPORT_OUTPUTDIR)/special_classes/$(strip $1) $(PRINTF) " done\n" $(PRINTF) "Cleaning headers $(if $1,for $(strip $1)) ..." $(RM) -r $(SUPPORT_OUTPUTDIR)/headers/$(strip $1) diff --git a/make/StripBinaries.gmk b/make/StripBinaries.gmk index c7fb8f105f1..5b1d6aaf04a 100644 --- a/make/StripBinaries.gmk +++ b/make/StripBinaries.gmk @@ -28,6 +28,9 @@ default: all include $(SPEC) include MakeBase.gmk +# Hook to include the corresponding custom file, if present. +$(eval $(call IncludeCustomExtension, , StripBinaries.gmk)) + ################################################################################ # Copy native libraries and executables to a secondary location to strip them # and filter out files that shouldn't go into the image. @@ -51,11 +54,13 @@ else endef endif +NO_STRIP_CMDS_FILTER += %.cgi + # Don't include debug info for executables. ALL_CMDS_SRC := $(filter-out %.bc %.debuginfo %.diz %.map %.pdb, \ $(shell $(FIND) $(SUPPORT_OUTPUTDIR)/modules_cmds -type f -o -type l)) -COPY_CMDS_SRC := $(filter %.cgi, $(ALL_CMDS_SRC)) -STRIP_CMDS_SRC := $(filter-out $(COPY_CMDS_SRC), $(ALL_CMDS_SRC)) +COPY_CMDS_SRC := $(filter $(NO_STRIP_CMDS_FILTER), $(ALL_CMDS_SRC)) +STRIP_CMDS_SRC := $(filter-out $(NO_STRIP_CMDS_FILTER), $(ALL_CMDS_SRC)) # Make sure symbolic links are copied and not stripped COPY_LIBS_SRC := \ diff --git a/make/common/MakeBase.gmk b/make/common/MakeBase.gmk index 4a88442e643..7c435dad0c1 100644 --- a/make/common/MakeBase.gmk +++ b/make/common/MakeBase.gmk @@ -753,6 +753,17 @@ DependOnVariableHelper = \ DependOnVariable = \ $(call DependOnVariableHelper,$(strip $1),$(strip $2)) +################################################################################ +# Find lib dir for module +# Param 1 - module name +ifeq ($(OPENJDK_TARGET_OS_TYPE), unix) + FindLibDirForModule = \ + $(SUPPORT_OUTPUTDIR)/modules_libs/$(strip $1)$(OPENJDK_TARGET_CPU_LIBDIR) +else + FindLibDirForModule = \ + $(SUPPORT_OUTPUTDIR)/modules_libs/$(strip $1) +endif + ################################################################################ # Hook to include the corresponding custom file, if present. From 2aebdad393fe3f11c709fd97d7e55f5a03d2776d Mon Sep 17 00:00:00 2001 From: Jiangli Zhou Date: Fri, 12 Jun 2015 17:03:04 -0400 Subject: [PATCH 03/13] 8015086: add interned strings to the shared archive Support saving interned strings in shared CDS archive. Reviewed-by: coleenp, iklam, pliden --- test/lib/sun/hotspot/WhiteBox.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/lib/sun/hotspot/WhiteBox.java b/test/lib/sun/hotspot/WhiteBox.java index 2cd3d670295..1df21011ee8 100644 --- a/test/lib/sun/hotspot/WhiteBox.java +++ b/test/lib/sun/hotspot/WhiteBox.java @@ -363,4 +363,7 @@ public class WhiteBox { // Safepoint Checking public native void assertMatchingSafepointCalls(boolean mutexSafepointValue, boolean attemptedNoSafepointValue); + + // Sharing + public native boolean isShared(Object o); } From 8993ac36f0341e08a43beae38147958cc6e8dc65 Mon Sep 17 00:00:00 2001 From: Mikhailo Seledtsov Date: Wed, 17 Jun 2015 21:43:26 +0000 Subject: [PATCH 04/13] 8098821: Crash in system dictionary initialization with shared strings Map string regions after the compressed class base is known Reviewed-by: iklam, dcubed, coleenp --- test/lib/sun/hotspot/WhiteBox.java | 1 + 1 file changed, 1 insertion(+) diff --git a/test/lib/sun/hotspot/WhiteBox.java b/test/lib/sun/hotspot/WhiteBox.java index 1df21011ee8..8e081286d01 100644 --- a/test/lib/sun/hotspot/WhiteBox.java +++ b/test/lib/sun/hotspot/WhiteBox.java @@ -366,4 +366,5 @@ public class WhiteBox { // Sharing public native boolean isShared(Object o); + public native boolean areSharedStringsIgnored(); } From f0b036aabcd3731cb010d7ecbeceec4648cc5450 Mon Sep 17 00:00:00 2001 From: Dmitrij Pochepko Date: Sat, 20 Jun 2015 11:24:07 +0300 Subject: [PATCH 05/13] 8098834: Update jprt.properties with property listing tests subtrees Reviewed-by: dholmes --- make/jprt.properties | 3 +++ 1 file changed, 3 insertions(+) diff --git a/make/jprt.properties b/make/jprt.properties index ef3a45d000e..2cebf5f412b 100644 --- a/make/jprt.properties +++ b/make/jprt.properties @@ -45,6 +45,9 @@ jprt.sync.push=${my.is.hotspot.job ? false : true} # Directories to be excluded from the source bundles jprt.bundle.exclude.src.dirs=build dist webrev +# Regression tests subtrees to use +jprt.test.src.directories=./test,./hotspot/test,./jdk/test,./langtools/test + # Use configure when building jprt.build.use.configure=true From c62e4b8ee30fe718d01caf2b662847a8840c8e8a Mon Sep 17 00:00:00 2001 From: Dmitry Samersoff Date: Tue, 23 Jun 2015 12:30:57 +0300 Subject: [PATCH 06/13] 8081576: serviceability/sa tests fail due to LingeredApp process fails to start Provide a API to corrctly terminate LingeredApp Reviewed-by: sspitsyn --- .../jdk/test/lib/apps/LingeredApp.java | 32 ++++++++++++------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/test/lib/share/classes/jdk/test/lib/apps/LingeredApp.java b/test/lib/share/classes/jdk/test/lib/apps/LingeredApp.java index 513c40e4c78..bed68068a5b 100644 --- a/test/lib/share/classes/jdk/test/lib/apps/LingeredApp.java +++ b/test/lib/share/classes/jdk/test/lib/apps/LingeredApp.java @@ -287,7 +287,7 @@ public class LingeredApp { } } else{ - // Lets user manage LingerApp options + // Lets user manage LingeredApp options cmd.addAll(vmArguments); } @@ -320,6 +320,20 @@ public class LingeredApp { gb.start(); } + /** + * Delete lock file that signals app to terminate, then + * wait until app is actually terminated. + * @throws IOException + */ + public void stopApp() throws IOException { + deleteLock(); + waitAppTerminate(); + int exitcode = appProcess.exitValue(); + if (exitcode != 0) { + throw new IOException("LingeredApp terminated with non-zero exit code " + exitcode); + } + } + /** * High level interface for test writers */ @@ -351,17 +365,11 @@ public class LingeredApp { return startApp(null); } - /** - * Delete lock file that signal app to terminate, then - * waits until app is actually terminated. - * @throws IOException - */ - public void stopApp() throws IOException { - deleteLock(); - waitAppTerminate(); - int exitcode = appProcess.exitValue(); - if (exitcode != 0) { - throw new IOException("LingeredApp terminated with non-zero exit code " + exitcode); + public static void stopApp(LingeredApp app) throws IOException { + if (app != null) { + // LingeredApp can throw an exception during the intialization, + // make sure we don't have cascade NPE + app.stopApp(); } } From 32a2354292b7b606caa2fba7d2d5a4447d22946c Mon Sep 17 00:00:00 2001 From: Mikael Vidstedt Date: Tue, 23 Jun 2015 10:20:10 -0700 Subject: [PATCH 07/13] 8129518: Remove ParOldGC tests from the jprt hotspot testset Reviewed-by: dholmes, brutisso --- make/jprt.properties | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/make/jprt.properties b/make/jprt.properties index ef3a45d000e..c24a28f1cfd 100644 --- a/make/jprt.properties +++ b/make/jprt.properties @@ -282,13 +282,11 @@ my.test.targets.hotspot.solaris.sparcv9= \ solaris_sparcv9_5.11-{product|fastdebug}-c2-GCBasher_ParallelGC, \ solaris_sparcv9_5.11-{product|fastdebug}-c2-GCBasher_CMS, \ solaris_sparcv9_5.11-{product|fastdebug}-c2-GCBasher_G1, \ - solaris_sparcv9_5.11-{product|fastdebug}-c2-GCBasher_ParOldGC, \ solaris_sparcv9_5.11-{product|fastdebug}-c2-jbb_default_nontiered, \ solaris_sparcv9_5.11-{product|fastdebug}-c2-jbb_SerialGC, \ solaris_sparcv9_5.11-{product|fastdebug}-c2-jbb_ParallelGC, \ solaris_sparcv9_5.11-{product|fastdebug}-c2-jbb_CMS, \ - solaris_sparcv9_5.11-{product|fastdebug}-c2-jbb_G1, \ - solaris_sparcv9_5.11-{product|fastdebug}-c2-jbb_ParOldGC + solaris_sparcv9_5.11-{product|fastdebug}-c2-jbb_G1 my.test.targets.hotspot.solaris.x64= \ solaris_x64_5.11-{product|fastdebug}-c2-jvm98, \ @@ -301,7 +299,6 @@ my.test.targets.hotspot.solaris.x64= \ solaris_x64_5.11-{product|fastdebug}-c2-GCBasher_ParallelGC, \ solaris_x64_5.11-{product|fastdebug}-c2-GCBasher_CMS, \ solaris_x64_5.11-{product|fastdebug}-c2-GCBasher_G1, \ - solaris_x64_5.11-{product|fastdebug}-c2-GCBasher_ParOldGC, \ solaris_x64_5.11-{product|fastdebug}-c2-jbb_default_nontiered, \ solaris_x64_5.11-{product|fastdebug}-c2-jbb_SerialGC, \ solaris_x64_5.11-{product|fastdebug}-c2-jbb_ParallelGC, @@ -319,13 +316,11 @@ my.test.targets.hotspot.linux.i586= \ linux_i586_2.6-{product|fastdebug}-{c1|c2}-GCBasher_ParallelGC, \ linux_i586_2.6-{product|fastdebug}-{c1|c2}-GCBasher_CMS, \ linux_i586_2.6-{product|fastdebug}-{c1|c2}-GCBasher_G1, \ - linux_i586_2.6-{product|fastdebug}-{c1|c2}-GCBasher_ParOldGC, \ linux_i586_2.6-{product|fastdebug}-c1-jbb_SerialGC, \ linux_i586_2.6-{product|fastdebug}-c2-jbb_default_nontiered, \ linux_i586_2.6-{product|fastdebug}-c1-jbb_ParallelGC, \ linux_i586_2.6-{product|fastdebug}-c1-jbb_CMS, \ - linux_i586_2.6-{product|fastdebug}-c1-jbb_G1, \ - linux_i586_2.6-{product|fastdebug}-c1-jbb_ParOldGC + linux_i586_2.6-{product|fastdebug}-c1-jbb_G1 my.test.targets.hotspot.linux.x64= \ linux_x64_2.6-{product|fastdebug}-c2-jvm98, \ @@ -335,11 +330,9 @@ my.test.targets.hotspot.linux.x64= \ linux_x64_2.6-{product|fastdebug}-c2-GCBasher_ParallelGC, \ linux_x64_2.6-{product|fastdebug}-c2-GCBasher_CMS, \ linux_x64_2.6-{product|fastdebug}-c2-GCBasher_G1, \ - linux_x64_2.6-{product|fastdebug}-c2-GCBasher_ParOldGC, \ linux_x64_2.6-{product|fastdebug}-c2-jbb_default_nontiered, \ linux_x64_2.6-{product|fastdebug}-c2-jbb_ParallelGC, \ - linux_x64_2.6-{product|fastdebug}-c2-jbb_G1, \ - linux_x64_2.6-{product|fastdebug}-c2-jbb_ParOldGC + linux_x64_2.6-{product|fastdebug}-c2-jbb_G1 my.test.targets.hotspot.macosx.x64= \ macosx_x64_10.9-{product|fastdebug}-c2-jvm98, \ @@ -349,11 +342,9 @@ my.test.targets.hotspot.macosx.x64= \ macosx_x64_10.9-{product|fastdebug}-c2-GCBasher_ParallelGC, \ macosx_x64_10.9-{product|fastdebug}-c2-GCBasher_CMS, \ macosx_x64_10.9-{product|fastdebug}-c2-GCBasher_G1, \ - macosx_x64_10.9-{product|fastdebug}-c2-GCBasher_ParOldGC, \ macosx_x64_10.9-{product|fastdebug}-c2-jbb_default_nontiered, \ macosx_x64_10.9-{product|fastdebug}-c2-jbb_ParallelGC, \ - macosx_x64_10.9-{product|fastdebug}-c2-jbb_G1, \ - macosx_x64_10.9-{product|fastdebug}-c2-jbb_ParOldGC + macosx_x64_10.9-{product|fastdebug}-c2-jbb_G1 my.test.targets.hotspot.windows.i586= \ windows_i586_6.2-{product|fastdebug}-{c1|c2}-jvm98, \ @@ -367,13 +358,11 @@ my.test.targets.hotspot.windows.i586= \ windows_i586_6.2-{product|fastdebug}-{c1|c2}-GCBasher_ParallelGC, \ windows_i586_6.2-{product|fastdebug}-{c1|c2}-GCBasher_CMS, \ windows_i586_6.2-{product|fastdebug}-{c1|c2}-GCBasher_G1, \ - windows_i586_6.2-{product|fastdebug}-{c1|c2}-GCBasher_ParOldGC, \ windows_i586_6.2-{product|fastdebug}-{c1|c2}-jbb_default, \ windows_i586_6.2-{product|fastdebug}-c2-jbb_default_nontiered, \ windows_i586_6.2-product-{c1|c2}-jbb_ParallelGC, \ windows_i586_6.2-product-{c1|c2}-jbb_CMS, \ - windows_i586_6.2-product-{c1|c2}-jbb_G1, \ - windows_i586_6.2-product-{c1|c2}-jbb_ParOldGC + windows_i586_6.2-product-{c1|c2}-jbb_G1 my.test.targets.hotspot.windows.x64= \ windows_x64_6.2-{product|fastdebug}-c2-jvm98, \ @@ -386,13 +375,11 @@ my.test.targets.hotspot.windows.x64= \ windows_x64_6.2-{product|fastdebug}-c2-GCBasher_ParallelGC, \ windows_x64_6.2-{product|fastdebug}-c2-GCBasher_CMS, \ windows_x64_6.2-{product|fastdebug}-c2-GCBasher_G1, \ - windows_x64_6.2-{product|fastdebug}-c2-GCBasher_ParOldGC, \ windows_x64_6.2-{product|fastdebug}-c2-jbb_default, \ windows_x64_6.2-{product|fastdebug}-c2-jbb_default_nontiered, \ windows_x64_6.2-product-c2-jbb_CMS, \ windows_x64_6.2-product-c2-jbb_ParallelGC, \ - windows_x64_6.2-product-c2-jbb_G1, \ - windows_x64_6.2-product-c2-jbb_ParOldGC + windows_x64_6.2-product-c2-jbb_G1 # Some basic "smoke" tests for OpenJDK builds my.test.targets.hotspot.open= \ From 4fe28ee3186130127368fbd51c3c92d3bce24814 Mon Sep 17 00:00:00 2001 From: Thomas Schatzl Date: Wed, 24 Jun 2015 09:41:11 +0200 Subject: [PATCH 08/13] 8079208: gc/g1/TestLargePageUseForAuxMemory.java fails due to not considering page allocation granularity for setup The test case needs to use the OS'es allocation granularity to properly determine the boundary values for the test. Reviewed-by: dfazunen, jmasa, ecaspole --- test/lib/sun/hotspot/WhiteBox.java | 1 + 1 file changed, 1 insertion(+) diff --git a/test/lib/sun/hotspot/WhiteBox.java b/test/lib/sun/hotspot/WhiteBox.java index 8e081286d01..0121ca4fecc 100644 --- a/test/lib/sun/hotspot/WhiteBox.java +++ b/test/lib/sun/hotspot/WhiteBox.java @@ -83,6 +83,7 @@ public class WhiteBox { public native int getHeapOopSize(); public native int getVMPageSize(); + public native long getVMAllocationGranularity(); public native long getVMLargePageSize(); private native boolean isObjectInOldGen0(Object o); From 920d9bde4ca710edecdf311731297ccfd9976d66 Mon Sep 17 00:00:00 2001 From: Erik Joelsson Date: Mon, 29 Jun 2015 10:55:17 +0200 Subject: [PATCH 09/13] 8114822: debug build with --disable-debug-symbols fails: java.io.UncheckedIOException Reviewed-by: dholmes --- make/StripBinaries.gmk | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/make/StripBinaries.gmk b/make/StripBinaries.gmk index c7fb8f105f1..c42279e4528 100644 --- a/make/StripBinaries.gmk +++ b/make/StripBinaries.gmk @@ -57,16 +57,16 @@ ALL_CMDS_SRC := $(filter-out %.bc %.debuginfo %.diz %.map %.pdb, \ COPY_CMDS_SRC := $(filter %.cgi, $(ALL_CMDS_SRC)) STRIP_CMDS_SRC := $(filter-out $(COPY_CMDS_SRC), $(ALL_CMDS_SRC)) -# Make sure symbolic links are copied and not stripped -COPY_LIBS_SRC := \ - $(shell $(FIND) $(SUPPORT_OUTPUTDIR)/modules_libs \ - \( ! -name '*$(SHARED_LIBRARY_SUFFIX)' -type f \) -o -type l) # OS X stores symbol information in a .dylib file inside a .dSYM directory - # that file should not be stripped, so we prune the tree at the .dSYM directory. # Example: support/modules_libs/java.base/libjsig.dylib.dSYM/Contents/Resources/DWARF/libjsig.dylib STRIP_LIBS_SRC := \ $(shell $(FIND) $(SUPPORT_OUTPUTDIR)/modules_libs \ -name '*$(SHARED_LIBRARY_SUFFIX)' -type f -print -o -name "*.dSYM" -prune) +# Make sure symbolic links are copied and not stripped. +COPY_LIBS_SRC := \ + $(filter-out $(STRIP_LIBS_SRC), \ + $(shell $(FIND) $(SUPPORT_OUTPUTDIR)/modules_libs -type f -o -type l)) $(eval $(call SetupCopyFiles,STRIP_MODULES_CMDS, \ SRC := $(SUPPORT_OUTPUTDIR)/modules_cmds, \ From e4cc69a28838f5a92650efd67c9abadf14709760 Mon Sep 17 00:00:00 2001 From: Erik Joelsson Date: Mon, 29 Jun 2015 11:00:10 +0200 Subject: [PATCH 10/13] 8129969: Switch JPRT configuration to use devkits for Windows and Macosx Reviewed-by: tbell, dholmes --- make/jprt.properties | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/make/jprt.properties b/make/jprt.properties index ef3a45d000e..2ea007061a9 100644 --- a/make/jprt.properties +++ b/make/jprt.properties @@ -123,11 +123,13 @@ jprt.i586.productOpen.build.configure.args= \ ${my.i586.default.build.configure.args} \ ${jprt.productOpen.build.configure.args} -jprt.windows_i586_6.2.build.configure.args= \ - --with-toolchain-version=2013 \ +jprt.windows_i586.build.configure.args= \ + --with-devkit=$VS2013_HOME \ ${jprt.i586.build.configure.args} -jprt.windows_x64_6.2.build.configure.args= \ - --with-toolchain-version=2013 +jprt.windows_x64.build.configure.args= \ + --with-devkit=$VS2013_HOME +jprt.macosx_x64.build.configure.args= \ + --with-devkit=$XCODE_511_HOME ######## # From e2342386b862cf2879a2ef685bab0a38a48974c8 Mon Sep 17 00:00:00 2001 From: Alejandro Murillo Date: Mon, 29 Jun 2015 17:17:56 -0700 Subject: [PATCH 11/13] 8130092: Backout Update jprt.properties with property listing tests subtrees Reviewed-by: dholmes --- make/jprt.properties | 3 --- 1 file changed, 3 deletions(-) diff --git a/make/jprt.properties b/make/jprt.properties index 8eab976810d..c24a28f1cfd 100644 --- a/make/jprt.properties +++ b/make/jprt.properties @@ -45,9 +45,6 @@ jprt.sync.push=${my.is.hotspot.job ? false : true} # Directories to be excluded from the source bundles jprt.bundle.exclude.src.dirs=build dist webrev -# Regression tests subtrees to use -jprt.test.src.directories=./test,./hotspot/test,./jdk/test,./langtools/test - # Use configure when building jprt.build.use.configure=true From e0916bf585177cddb345378c37535b9cf6cc6196 Mon Sep 17 00:00:00 2001 From: Erik Joelsson Date: Tue, 30 Jun 2015 09:51:08 +0200 Subject: [PATCH 12/13] 8130060: Revert use of devkit on macosx in JPRT Reviewed-by: tbell --- make/jprt.properties | 2 -- 1 file changed, 2 deletions(-) diff --git a/make/jprt.properties b/make/jprt.properties index 2ea007061a9..779fef1aa08 100644 --- a/make/jprt.properties +++ b/make/jprt.properties @@ -128,8 +128,6 @@ jprt.windows_i586.build.configure.args= \ ${jprt.i586.build.configure.args} jprt.windows_x64.build.configure.args= \ --with-devkit=$VS2013_HOME -jprt.macosx_x64.build.configure.args= \ - --with-devkit=$XCODE_511_HOME ######## # From 95a14aeba143d35498801a526791b0c5b9f92abc Mon Sep 17 00:00:00 2001 From: Matthias Baesken Date: Thu, 2 Jul 2015 09:38:41 +0200 Subject: [PATCH 13/13] 8130303: Fix bogus check for libX11.so in libraries.m4 Reviewed-by: simonis, erikj --- common/autoconf/generated-configure.sh | 4 ++-- common/autoconf/libraries.m4 | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh index 446fadaba6a..68446dae10c 100644 --- a/common/autoconf/generated-configure.sh +++ b/common/autoconf/generated-configure.sh @@ -4364,7 +4364,7 @@ VS_SDK_PLATFORM_NAME_2013= #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1434614912 +DATE_WHEN_GENERATED=1435822080 ############################################################################### # @@ -42961,7 +42961,7 @@ $as_echo "$as_me: WARNING: X11 is not used, so --with-x is ignored" >&2;} if test "x$x_libraries" = xNONE; then if test -f "$SYSROOT/usr/X11R6/lib/libX11.so"; then x_libraries="$SYSROOT/usr/X11R6/lib" - elif test "$SYSROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then + elif test -f "$SYSROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then x_libraries="$SYSROOT/usr/lib64" elif test -f "$SYSROOT/usr/lib/libX11.so"; then x_libraries="$SYSROOT/usr/lib" diff --git a/common/autoconf/libraries.m4 b/common/autoconf/libraries.m4 index 6e963b280de..6b651132851 100644 --- a/common/autoconf/libraries.m4 +++ b/common/autoconf/libraries.m4 @@ -113,7 +113,7 @@ AC_DEFUN_ONCE([LIB_SETUP_X11], if test "x$x_libraries" = xNONE; then if test -f "$SYSROOT/usr/X11R6/lib/libX11.so"; then x_libraries="$SYSROOT/usr/X11R6/lib" - elif test "$SYSROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then + elif test -f "$SYSROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then x_libraries="$SYSROOT/usr/lib64" elif test -f "$SYSROOT/usr/lib/libX11.so"; then x_libraries="$SYSROOT/usr/lib"