mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-17 17:44:40 +02:00
8237756: Backout: JDK-8230594: Allow direct handshakes without VMThread intervention
Backout JDK-8230594 Reviewed-by: coleenp, dcubed
This commit is contained in:
parent
94bb505c94
commit
5e9d3fdc9c
9 changed files with 161 additions and 346 deletions
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1997, 2020, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2019, 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
|
||||
|
@ -494,6 +494,8 @@ void SafepointSynchronize::disarm_safepoint() {
|
|||
assert(!cur_state->is_running(), "Thread not suspended at safepoint");
|
||||
cur_state->restart(); // TSS _running
|
||||
assert(cur_state->is_running(), "safepoint state has not been reset");
|
||||
|
||||
SafepointMechanism::disarm_if_needed(current, false /* NO release */);
|
||||
}
|
||||
} // ~JavaThreadIteratorWithHandle
|
||||
|
||||
|
@ -734,6 +736,7 @@ static bool safepoint_safe_with(JavaThread *thread, JavaThreadState state) {
|
|||
}
|
||||
|
||||
bool SafepointSynchronize::handshake_safe(JavaThread *thread) {
|
||||
assert(Thread::current()->is_VM_thread(), "Must be VMThread");
|
||||
if (thread->is_ext_suspended() || thread->is_terminated()) {
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue