8064749: -XX:-UseCompilerSafepoints breaks safepoint rendezvous

Reviewed-by: dcubed, coleenp, kvn, dholmes
This commit is contained in:
Aleksey Shipilev 2014-11-13 19:12:28 +03:00
parent 2993751669
commit 8f3190b805
3 changed files with 5 additions and 9 deletions
hotspot/src/share/vm/runtime

@ -313,6 +313,7 @@ static ObsoleteFlag obsolete_jvm_flags[] = {
{ "UseFastAccessorMethods", JDK_Version::jdk(9), JDK_Version::jdk(10) },
{ "UseFastEmptyMethods", JDK_Version::jdk(9), JDK_Version::jdk(10) },
#endif // ZERO
{ "UseCompilerSafepoints", JDK_Version::jdk(9), JDK_Version::jdk(10) },
{ NULL, JDK_Version(0), JDK_Version(0) }
};

@ -777,9 +777,6 @@ class CommandLineFlags {
develop(bool, TraceHandleAllocation, false, \
"Print out warnings when suspiciously many handles are allocated")\
\
product(bool, UseCompilerSafepoints, true, \
"Stop at safepoints in compiled code") \
\
product(bool, FailOverToOldVerifier, true, \
"Fail over to old verifier when split verifier fails") \
\

@ -182,7 +182,7 @@ void SafepointSynchronize::begin() {
// Make interpreter safepoint aware
Interpreter::notice_safepoints();
if (UseCompilerSafepoints && DeferPollingPageLoopCount < 0) {
if (DeferPollingPageLoopCount < 0) {
// Make polling safepoint aware
guarantee (PageArmed == 0, "invariant") ;
PageArmed = 1 ;
@ -288,7 +288,7 @@ void SafepointSynchronize::begin() {
// 9. On windows consider using the return value from SwitchThreadTo()
// to drive subsequent spin/SwitchThreadTo()/Sleep(N) decisions.
if (UseCompilerSafepoints && int(iterations) == DeferPollingPageLoopCount) {
if (int(iterations) == DeferPollingPageLoopCount) {
guarantee (PageArmed == 0, "invariant") ;
PageArmed = 1 ;
os::make_polling_page_unreadable();
@ -1074,7 +1074,7 @@ void SafepointSynchronize::deferred_initialize_stat() {
guarantee(_safepoint_stats != NULL,
"not enough memory for safepoint instrumentation data");
if (UseCompilerSafepoints && DeferPollingPageLoopCount >= 0) {
if (DeferPollingPageLoopCount >= 0) {
need_to_track_page_armed_status = true;
}
init_done = true;
@ -1241,9 +1241,7 @@ void SafepointSynchronize::print_stat_on_exit() {
// Print out polling page sampling status.
if (!need_to_track_page_armed_status) {
if (UseCompilerSafepoints) {
tty->print_cr("Polling page always armed");
}
tty->print_cr("Polling page always armed");
} else {
tty->print_cr("Defer polling page loop count = %d\n",
DeferPollingPageLoopCount);