Hi David,

> Now why would a GCTaskThread being executing code that accesses
> JvmtiRawMonitors? Are we in some kind of event callback?
I believe so. The test registers the following callbacks:
    callbacks.GarbageCollectionStart = &GarbageCollectionStart;
    callbacks.GarbageCollectionFinish = &GarbageCollectionFinish;
And these callback functions use jvmti->RawMonitorEnter.

Note that the spec for "Raw Monitor Enter" allows this:
"This function may be called from the callbacks to the Heap iteration 
functions, or from the event handlers for the GarbageCollectionStart, 
GarbageCollectionFinish, and ObjectFree events."

> Is there any more stack? What is that dll?
The dll belongs to the test. I guess it was built without debug info so there's 
no native stack trace available.

> Can you tell me what test this was and how to reproduce?
make run-test TEST="vmTestbase/nsk/jvmti/scenarios/allocation/AP04/ap04t001"
I haven't tried if it can be reproduced well. May be sporadic.

At least, I can confirm that the following comment is true 😊
// FIXME: this is broken - raw_enter only accepts the VMThread

Best regards,
Martin

Reply via email to