From db0f9f020b0e272ce94a3507ffd8ee128a45d50a Mon Sep 17 00:00:00 2001 From: Jon Masamitsu Date: Fri, 13 May 2016 12:36:03 -0700 Subject: [PATCH 1/5] 8156867: Simplify/reduce testing in ParallelCompact_test Reviewed-by: jwilhelm, jprovino --- hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp | 7 ------- 1 file changed, 7 deletions(-) diff --git a/hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp b/hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp index f7d1615c814..d16e510a5f5 100644 --- a/hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp +++ b/hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp @@ -394,13 +394,6 @@ void ParallelCompact_test() { HeapWord* end_heap = (HeapWord*) heap->young_gen()->virtual_space()->high_boundary(); - size_t end_index = - PSParallelCompact::summary_data().addr_to_region_idx(end_heap); - ParallelCompactData::RegionData* c = PSParallelCompact::summary_data().region(end_index); - - // Initialize the end region with a bad destination. - c->set_destination(begin_heap - 1); - print_generic_summary_data(PSParallelCompact::summary_data(), begin_heap, end_heap); } From d40a606f069b7e1e79588bdf0aacc3beaf53e10a Mon Sep 17 00:00:00 2001 From: Jiangli Zhou Date: Tue, 17 May 2016 17:42:16 -0400 Subject: [PATCH 2/5] 8149977: DumpLoadedClassList should not include generated classes Exclude anonymous classes from the generated class list. Reviewed-by: ccheung, iklam, hseigel --- hotspot/src/share/vm/classfile/classFileParser.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hotspot/src/share/vm/classfile/classFileParser.cpp b/hotspot/src/share/vm/classfile/classFileParser.cpp index 81216bbd518..e561cdcf160 100644 --- a/hotspot/src/share/vm/classfile/classFileParser.cpp +++ b/hotspot/src/share/vm/classfile/classFileParser.cpp @@ -5708,8 +5708,10 @@ void ClassFileParser::parse_stream(const ClassFileStream* const stream, #if INCLUDE_CDS if (DumpLoadedClassList != NULL && stream->source() != NULL && classlist_file->is_open()) { - // Only dump the classes that can be stored into CDS archive - if (SystemDictionaryShared::is_sharing_possible(_loader_data)) { + // Only dump the classes that can be stored into CDS archive. + // Anonymous classes such as generated LambdaForm classes are also not included. + if (SystemDictionaryShared::is_sharing_possible(_loader_data) && + _host_klass == NULL) { ResourceMark rm(THREAD); classlist_file->print_cr("%s", _class_name->as_C_string()); classlist_file->flush(); From 807e2b367c0ea126d382d05ab5c3590882728135 Mon Sep 17 00:00:00 2001 From: Claes Redestad Date: Wed, 18 May 2016 16:28:42 +0200 Subject: [PATCH 3/5] 8157090: SharedArchiveFile/SpaceUtilizationCheck.java fails as space utilization is below 30 percent Reviewed-by: iklam, mseledtsov --- hotspot/src/share/vm/memory/metaspaceShared.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/hotspot/src/share/vm/memory/metaspaceShared.hpp b/hotspot/src/share/vm/memory/metaspaceShared.hpp index be7b1bacb97..34d12eb3794 100644 --- a/hotspot/src/share/vm/memory/metaspaceShared.hpp +++ b/hotspot/src/share/vm/memory/metaspaceShared.hpp @@ -43,11 +43,11 @@ // for the x64 platform #define DEFAULT_VTBL_COMMON_CODE_SIZE (1*K) // conservative size of the "common_code" for the x64 platform -#define DEFAULT_SHARED_READ_WRITE_SIZE (NOT_LP64(9*M) LP64_ONLY(10*M)) -#define MIN_SHARED_READ_WRITE_SIZE (NOT_LP64(7*M) LP64_ONLY(10*M)) +#define DEFAULT_SHARED_READ_WRITE_SIZE (NOT_LP64(6*M) LP64_ONLY(10*M)) +#define MIN_SHARED_READ_WRITE_SIZE (NOT_LP64(6*M) LP64_ONLY(10*M)) -#define DEFAULT_SHARED_READ_ONLY_SIZE (NOT_LP64(9*M) LP64_ONLY(10*M)) -#define MIN_SHARED_READ_ONLY_SIZE (NOT_LP64(9*M) LP64_ONLY(10*M)) +#define DEFAULT_SHARED_READ_ONLY_SIZE (NOT_LP64(6*M) LP64_ONLY(10*M)) +#define MIN_SHARED_READ_ONLY_SIZE (NOT_LP64(6*M) LP64_ONLY(10*M)) // the MIN_SHARED_MISC_DATA_SIZE and MIN_SHARED_MISC_CODE_SIZE estimates are based on // the sizes required for dumping the archive using the default classlist. The sizes From 46627989d5358eafd15beeba8a6b08dad312f622 Mon Sep 17 00:00:00 2001 From: Andreas Eriksson Date: Wed, 18 May 2016 11:06:00 +0200 Subject: [PATCH 4/5] 8135322: ConstantPool::release_C_heap_structures not run in some circumstances Reviewed-by: coleenp, sspitsyn --- hotspot/src/share/vm/classfile/classLoaderData.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hotspot/src/share/vm/classfile/classLoaderData.cpp b/hotspot/src/share/vm/classfile/classLoaderData.cpp index 3ca97efb7a0..a9829a0393e 100644 --- a/hotspot/src/share/vm/classfile/classLoaderData.cpp +++ b/hotspot/src/share/vm/classfile/classLoaderData.cpp @@ -382,6 +382,10 @@ void ClassLoaderData::unload() { } log->cr(); } + + // In some rare cases items added to this list will not be freed elsewhere. + // To keep it simple, just free everything in it here. + free_deallocate_list(); } PackageEntryTable* ClassLoaderData::packages() { From 2f4c6f1b0573b88235c1ecc6b70233f23f43603f Mon Sep 17 00:00:00 2001 From: Erik Joelsson Date: Thu, 19 May 2016 11:43:21 +0200 Subject: [PATCH 5/5] 8157325: gtest tests are not excluded for minimal builds Reviewed-by: erikj, jwilhelm --- hotspot/make/lib/CompileGtest.gmk | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/hotspot/make/lib/CompileGtest.gmk b/hotspot/make/lib/CompileGtest.gmk index 9cf1d891255..2fd3f966704 100644 --- a/hotspot/make/lib/CompileGtest.gmk +++ b/hotspot/make/lib/CompileGtest.gmk @@ -36,9 +36,6 @@ endif ################################################################################ -GTEST_TEST_SRC_FILES := $(shell $(FIND) $(HOTSPOT_TOPDIR)/test/native -name \ - "test*.cpp" -type f) - ifeq ($(OPENJDK_TARGET_OS), windows) GTEST_JVM_MAPFILE := $(JVM_MAPFILE) else @@ -58,10 +55,12 @@ $(eval $(call SetupNativeCompilation, BUILD_GTEST_LIBJVM, \ TOOLCHAIN := $(JVM_TOOLCHAIN), \ LIBRARY := jvm, \ OUTPUT_DIR := $(JVM_OUTPUTDIR)/gtest, \ - EXTRA_FILES := $(GTEST_TEST_SRC_FILES) \ - $(GTEST_FRAMEWORK_SRC)/src/gtest-all.cc \ - $(GTEST_TEST_SRC)/gtestMain.cpp, \ OBJECT_DIR := $(JVM_OUTPUTDIR)/gtest/objs, \ + SRC := $(GTEST_TEST_SRC), \ + EXCLUDES := $(JVM_EXCLUDES), \ + EXCLUDE_FILES := gtestLauncher.cpp, \ + EXCLUDE_PATTERNS := $(JVM_EXCLUDE_PATTERNS), \ + EXTRA_FILES := $(GTEST_FRAMEWORK_SRC)/src/gtest-all.cc, \ EXTRA_OBJECT_FILES := $(filter-out %/operator_new$(OBJ_SUFFIX), \ $(BUILD_LIBJVM_ALL_OBJS)), \ CFLAGS := $(JVM_CFLAGS) -I$(GTEST_FRAMEWORK_SRC) \