From f3b9da429d02d56abc2f894077fde54a3c3ba250 Mon Sep 17 00:00:00 2001 From: Thomas Schatzl Date: Wed, 24 Jun 2015 17:46:26 +0200 Subject: [PATCH 1/3] 8129602: Incorrect GPL header causes RE script to create wrong output Fix up GPL headers so that the RE script works. Reviewed-by: stefank, dholmes, coleenp --- hotspot/test/testlibrary/ctw/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hotspot/test/testlibrary/ctw/Makefile b/hotspot/test/testlibrary/ctw/Makefile index 5bca7754c69..a4fc46264e4 100644 --- a/hotspot/test/testlibrary/ctw/Makefile +++ b/hotspot/test/testlibrary/ctw/Makefile @@ -8,7 +8,7 @@ # # This code is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License # version 2 for more details (a copy is included in the LICENSE file that # accompanied this code). # From def61423c2359d89c69390a86895a12bfed140d1 Mon Sep 17 00:00:00 2001 From: Thomas Schatzl Date: Thu, 25 Jun 2015 09:04:28 +0200 Subject: [PATCH 2/3] 8129604: Incorrect GPL header in README causes RE script to create wrong output Fix up GPL headers by removing leading "#" so that the RE script works. Reviewed-by: brutisso, coleenp --- hotspot/test/testlibrary/ctw/README | 46 ++++++++++++++--------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/hotspot/test/testlibrary/ctw/README b/hotspot/test/testlibrary/ctw/README index babb0816229..a3badc6d5df 100644 --- a/hotspot/test/testlibrary/ctw/README +++ b/hotspot/test/testlibrary/ctw/README @@ -1,26 +1,26 @@ -# -# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# This code is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. -# -# This code is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# version 2 for more details (a copy is included in the LICENSE file that -# accompanied this code). -# -# You should have received a copy of the GNU General Public License version -# 2 along with this work; if not, write to the Free Software Foundation, -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -# or visit www.oracle.com if you need additional information or have any -# questions. -# -# + +Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. +DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + +This code is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License version 2 only, as +published by the Free Software Foundation. + +This code is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +version 2 for more details (a copy is included in the LICENSE file that +accompanied this code). + +You should have received a copy of the GNU General Public License version +2 along with this work; if not, write to the Free Software Foundation, +Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + +Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA +or visit www.oracle.com if you need additional information or have any +questions. + + DESCRIPTION From 2431e87477e510d13a79c7a1036fcb9bfeb7a7e3 Mon Sep 17 00:00:00 2001 From: Thomas Schatzl Date: Thu, 25 Jun 2015 09:06:35 +0200 Subject: [PATCH 3/3] 8129573: CollectedHeap::fill_with_objects() needs to use multiple arrays in 32 bit mode too In JDK-8042668 we introduced a custom fill threshold for G1. This leads to CollectedHeap::fill_with_objects create too large objects in G1 when using it in 32 bit mode, as the code to create multiple filler objects is IFDEF'ed out on 32 bit. Enable this code on 32 bit too. Reviewed-by: tonyp, mgerdin, tbenson --- hotspot/src/share/vm/gc/shared/collectedHeap.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/hotspot/src/share/vm/gc/shared/collectedHeap.cpp b/hotspot/src/share/vm/gc/shared/collectedHeap.cpp index 7008a7a8074..6d1a004fea6 100644 --- a/hotspot/src/share/vm/gc/shared/collectedHeap.cpp +++ b/hotspot/src/share/vm/gc/shared/collectedHeap.cpp @@ -488,19 +488,17 @@ void CollectedHeap::fill_with_objects(HeapWord* start, size_t words, bool zap) DEBUG_ONLY(fill_args_check(start, words);) HandleMark hm; // Free handles before leaving. -#ifdef _LP64 - // A single array can fill ~8G, so multiple objects are needed only in 64-bit. - // First fill with arrays, ensuring that any remaining space is big enough to - // fill. The remainder is filled with a single object. + // Multiple objects may be required depending on the filler array maximum size. Fill + // the range up to that with objects that are filler_array_max_size sized. The + // remainder is filled with a single object. const size_t min = min_fill_size(); const size_t max = filler_array_max_size(); while (words > max) { - const size_t cur = words - max >= min ? max : max - min; + const size_t cur = (words - max) >= min ? max : max - min; fill_with_array(start, cur, zap); start += cur; words -= cur; } -#endif fill_with_object_impl(start, words, zap); }