> Hi all,
>   ObjectMonitorUsage.java failed with `unexpected waiter_count` after 
> [JDK-8328083](https://bugs.openjdk.org/browse/JDK-8328083) on linux x86_32.
>   There are two changes in this PR:
> 1. In JvmtiEnvBase::get_object_monitor_usage function, change from 
> `java_lang_VirtualThread::is_instance(thread_oop)` to 
> `thread_oop->is_a(vmClasses::BaseVirtualThread_klass())`to support the 
> alternative implementation.
> 2. The JvmtiEnvBase::get_object_monitor_usage does take the vthread into 
> consideration when calculating nWant(mon->contentions()).
> 
>   
> 
> Additional testing:
> - [ ] linux x86_32 run all testcases in serviceability/jvmti, all testcases 
> run successed expect 
> `serviceability/jvmti/vthread/GetThreadState/GetThreadStateTest.java#default` 
> run failed. This test also run failed before this PR, which has been recorded 
> in [JDK-8333140](https://bugs.openjdk.org/browse/JDK-8333140)
> - [ ] linux x86_64 run all testcases in serviceability/jvmti, all testcases 
> run successed.
> 
> [x64.log](https://github.com/openjdk/jdk/files/15480081/x64.log)
> [x86.log](https://github.com/openjdk/jdk/files/15480083/x86.log)

SendaoYan has updated the pull request incrementally with one additional commit 
since the last revision:

  change from java_lang_VirtualThread::is_instance(thread_oop) to 
hread_oop->is_a(vmClasses::BaseVirtualThread_klass()) in 
Threads::get_pending_threads()

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/19405/files
  - new: https://git.openjdk.org/jdk/pull/19405/files/ea28c232..83521f47

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=19405&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19405&range=01-02

  Stats: 10 lines in 2 files changed: 0 ins; 8 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/19405.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19405/head:pull/19405

PR: https://git.openjdk.org/jdk/pull/19405

Reply via email to