mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
7021531: lock ordering problems after fix for 6354181
Reviewed-by: kvn, jrose
This commit is contained in:
parent
4b3ada699d
commit
8967db2c35
3 changed files with 30 additions and 0 deletions
|
@ -699,6 +699,17 @@ void ttyLocker::release_tty(intx holder) {
|
|||
defaultStream::instance->release(holder);
|
||||
}
|
||||
|
||||
bool ttyLocker::release_tty_if_locked() {
|
||||
intx thread_id = os::current_thread_id();
|
||||
if (defaultStream::instance->writer() == thread_id) {
|
||||
// release the lock and return true so callers know if was
|
||||
// previously held.
|
||||
release_tty(thread_id);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void ttyLocker::break_tty_lock_for_safepoint(intx holder) {
|
||||
if (defaultStream::instance != NULL &&
|
||||
defaultStream::instance->writer() == holder) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue