Forgot to say: I'm really happy you put in that new assert:

  if (interruptible) {
    assert(THREAD->is_Java_thread(), "Only JavaThreads can be interruptible");

Dan

On 9/18/19 9:32 AM, Daniel D. Daugherty wrote:
Thumbs up! This is a trivial change and only needs a single (R)eviewer.

Did you rerun the failing tests to make sure this is the only issue?

Dan

P.S.
I've done the "test a stack of patches" together and have something break
when you push just one of the patches... just recently in fact. :-(
At least yours didn't happen until Tier4... :-)

On 9/18/19 2:26 AM, David Holmes wrote:
Bug: https://bugs.openjdk.java.net/browse/JDK-8231162
webrev: http://cr.openjdk.java.net/~dholmes/8231162/webrev/

-      r = rmonitor->raw_wait(millis, true, thread);
+      r = rmonitor->raw_wait(millis, false, thread);

Non-JavaThreads are not interruptible and so "true" should not have been being passed. This tripped over the assertions added as part of the movement of the interrupt code to JavaThread under JDK-8230424.

Dan: FYI I overlooked this because I already rewrote all this RawMonitor logic under "8229160: Reimplement JvmtiRawMonitor to use PlatformMonitor" to do the right thing, but of course that hasn't been pushed yet. And this isn't detected until tier 4 testing. <sigh>

Thanks,
David


Reply via email to