# HG changeset patch # User apangin # Date 1219260269 25200 # Node ID d7bb383033d658b0da77ede536b3f591fdeccc47 # Parent 70c4fb9cf8995fc70d92213ed170d5c819b7a222# Parent 92e12124e774d574cf9a8ffab4213ada882488b8 Merge diff -r 92e12124e774 -r d7bb383033d6 make/hotspot_distro --- a/make/hotspot_distro Wed Aug 20 01:30:32 2008 -0700 +++ b/make/hotspot_distro Wed Aug 20 12:24:29 2008 -0700 @@ -1,6 +1,24 @@ -# -# Copyright 2006-2008 Sun Microsystems, Inc. All rights reserved. -# SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. +# +# Copyright 2006-2008 Sun Microsystems, Inc. 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, +# CA 95054 USA or visit www.sun.com if you need additional information or +# have any questions. # # diff -r 92e12124e774 -r d7bb383033d6 make/linux/makefiles/vm.make --- a/make/linux/makefiles/vm.make Wed Aug 20 01:30:32 2008 -0700 +++ b/make/linux/makefiles/vm.make Wed Aug 20 12:24:29 2008 -0700 @@ -195,7 +195,7 @@ if [ $$? = 0 ] ; then \ /usr/bin/chcon -t textrel_shlib_t $@; \ if [ $$? != 0 ]; then \ - echo "ERROR: Cannot chcon $@"; exit 1; \ + echo "ERROR: Cannot chcon $@"; \ fi \ fi \ fi \ diff -r 92e12124e774 -r d7bb383033d6 src/share/vm/memory/dump.cpp --- a/src/share/vm/memory/dump.cpp Wed Aug 20 01:30:32 2008 -0700 +++ b/src/share/vm/memory/dump.cpp Wed Aug 20 12:24:29 2008 -0700 @@ -1200,10 +1200,12 @@ mapinfo->write_space(CompactingPermGenGen::rw, _rw_space, false); _rw_space->set_saved_mark(); mapinfo->write_region(CompactingPermGenGen::md, _md_vs->low(), - md_top - _md_vs->low(), SharedMiscDataSize, + pointer_delta(md_top, _md_vs->low(), sizeof(char)), + SharedMiscDataSize, false, false); mapinfo->write_region(CompactingPermGenGen::mc, _mc_vs->low(), - mc_top - _mc_vs->low(), SharedMiscCodeSize, + pointer_delta(mc_top, _mc_vs->low(), sizeof(char)), + SharedMiscCodeSize, true, true); // Pass 2 - write data. @@ -1212,10 +1214,12 @@ mapinfo->write_space(CompactingPermGenGen::ro, _ro_space, true); mapinfo->write_space(CompactingPermGenGen::rw, _rw_space, false); mapinfo->write_region(CompactingPermGenGen::md, _md_vs->low(), - md_top - _md_vs->low(), SharedMiscDataSize, + pointer_delta(md_top, _md_vs->low(), sizeof(char)), + SharedMiscDataSize, false, false); mapinfo->write_region(CompactingPermGenGen::mc, _mc_vs->low(), - mc_top - _mc_vs->low(), SharedMiscCodeSize, + pointer_delta(mc_top, _mc_vs->low(), sizeof(char)), + SharedMiscCodeSize, true, true); mapinfo->close(); diff -r 92e12124e774 -r d7bb383033d6 src/share/vm/runtime/thread.cpp --- a/src/share/vm/runtime/thread.cpp Wed Aug 20 01:30:32 2008 -0700 +++ b/src/share/vm/runtime/thread.cpp Wed Aug 20 12:24:29 2008 -0700 @@ -2756,7 +2756,13 @@ // For now, just manually iterate through them. tc->do_thread(VMThread::vm_thread()); Universe::heap()->gc_threads_do(tc); - tc->do_thread(WatcherThread::watcher_thread()); + { + // Grab the Terminator_lock to prevent watcher_thread from being terminated. + MutexLockerEx mu(Terminator_lock, Mutex::_no_safepoint_check_flag); + WatcherThread *wt = WatcherThread::watcher_thread(); + if (wt != NULL) + tc->do_thread(wt); + } // If CompilerThreads ever become non-JavaThreads, add them here } diff -r 92e12124e774 -r d7bb383033d6 test/compiler/6646019/Test.java diff -r 92e12124e774 -r d7bb383033d6 test/compiler/6689060/Test.java diff -r 92e12124e774 -r d7bb383033d6 test/compiler/6695810/Test.java