8288532: additional review changes for JDK-8286830

Reviewed-by: pchilanomate, dholmes
This commit is contained in:
Daniel D. Daugherty 2022-06-21 16:36:51 +00:00
parent a144988600
commit 31d981e5ea
3 changed files with 13 additions and 3 deletions

View File

@ -147,6 +147,12 @@ class AsyncExceptionHandshake : public AsyncHandshakeClosure {
} }
~AsyncExceptionHandshake() { ~AsyncExceptionHandshake() {
Thread* current = Thread::current();
// Can get here from the VMThread via install_async_exception() bail out.
if (current->is_Java_thread()) {
guarantee(JavaThread::cast(current)->is_oop_safe(),
"JavaThread cannot touch oops after its GC barrier is detached.");
}
assert(!_exception.is_empty(), "invariant"); assert(!_exception.is_empty(), "invariant");
_exception.release(Universe::vm_global()); _exception.release(Universe::vm_global());
} }

View File

@ -23,7 +23,7 @@
/** /**
* @test * @test
* @bug 8167108 8266130 8283467 8284632 * @bug 8167108 8266130 8283467 8284632 8286830
* @summary Stress test JVM/TI StopThread() at thread exit. * @summary Stress test JVM/TI StopThread() at thread exit.
* @requires vm.jvmti * @requires vm.jvmti
* @run main/othervm/native -agentlib:StopAtExit StopAtExit * @run main/othervm/native -agentlib:StopAtExit StopAtExit
@ -72,6 +72,8 @@ public class StopAtExit extends Thread {
usage(); usage();
} }
} }
timeMax /= 2; // Split time between the two sub-tests.
test(timeMax); test(timeMax);
// Fire-up deamon that just creates new threads. This generates contention on // Fire-up deamon that just creates new threads. This generates contention on

View File

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2017, 2022, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -23,7 +23,7 @@
/** /**
* @test * @test
* @bug 8167108 8265240 * @bug 8167108 8265240 8286830
* @summary Stress test SuspendThread at thread exit. * @summary Stress test SuspendThread at thread exit.
* @requires vm.jvmti * @requires vm.jvmti
* @run main/othervm/native -agentlib:SuspendAtExit SuspendAtExit * @run main/othervm/native -agentlib:SuspendAtExit SuspendAtExit
@ -78,6 +78,8 @@ public class SuspendAtExit extends Thread {
usage(); usage();
} }
} }
timeMax /= 2; // Split time between the two sub-tests.
test(timeMax); test(timeMax);
// Fire-up deamon that just creates new threads. This generates contention on // Fire-up deamon that just creates new threads. This generates contention on