Hi Dan,
Did you run the jdk repo's com/sun/jdi tests with your fix?
Test result on my environment (Fedora 26 x86_64) is here:
-----------
Test results: passed: 120; failed: 2; error: 37
-----------
37 errors are caused by timeout in the shell.
2 failures are occurred at com/sun/jdi/JdbReadTwiceTest.sh#id0 and
com/sun/jdi/LineNumberInfo.java#id0. But they seems not to be related to this
change.
Thanks,
Yasumasa
On 2017/07/26 9:27, Yasumasa Suenaga wrote:
Hi Dan,
I've added some analysis to the bug report
Thanks!
I tried to fix this issue in JvmtiEnvBase::get_owned_monitors() at first.
But it is difficult because we cannot know pending monitor if thread state is
MONITOR_CONTENDED_ENTER when get_owned_monitor() is called.
Did you run the jdk repo's com/sun/jdi tests with your fix?
I have not done yet.
I have a trip until 28 July JST. So I will run it after that.
Yasumasa
On 2017/07/26 7:05, Daniel D. Daugherty wrote:
On 7/24/17 8:40 PM, Yasumasa Suenaga wrote:
Hi all,
I tried to get owned monitors in MonitorContendedEnter JVMTI event handler.
However GetOwnedMonitorInfo JVMTI function returns a monitor which is
not yet owned.
I attached reproducer to JBS. Please read README.md.
I think GetOwnedMonitorInfo() should not return a pending monitor.
I uploaded webrev. Could you review?
http://cr.openjdk.java.net/~ysuenaga/JDK-8185164/webrev.00/
I hope this fix is applied to 8u or later release.
I cannot access JPRT. So I need a sponsor.
Thanks for the bug report. It's nice to have a test case and a proposed
fix all in the bug report! I've added some analysis to the bug report
and we'll need to run this fix through Oracle's JPDA test stack which
is not (yet) open.
Did you run the jdk repo's com/sun/jdi tests with your fix?
Dan
Thanks,
Yasumasa