RFR: 8307968: serviceability/jvmti/vthread/StopThreadTest/StopThreadTest.java timed out [v2]

Serguei Spitsyn sspitsyn at openjdk.org
Tue May 16 01:23:41 UTC 2023


> This is newly integrated test times out because it has a race in in the Test #A.1 and #A.2.
> The main root cause is a print statement which can case target virtual thread to unpark and unmount.
> This causes that the `StopThreads` unexpectedly fails with the `JVMTI_ERROR_OPAQUE_FRAME` error code.
> The target thread can be in some other unexpected states if JVMTI `StopThread`
> is called before the target thread method `A()` reached the synchronized statement.
> 
> The fix is to replace the `ensureStarted()` with the `ensureAtPointA()`.
> The fix also includes some simplifications related to clearing the target thread interrupt status.
> 
> Testing:
> Hundreds of mach5 runs of `serviceability/jvmti/vthread` tests which include the fixed `StopThreadTest`.
> TBD: To run mack5 tiers1-3.

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

  moved Thread.interrupted() in StopThreadTest.java above a couple of lines

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/13969/files
  - new: https://git.openjdk.org/jdk/pull/13969/files/bc3d1b47..58080db4

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

  Stats: 5 lines in 1 file changed: 3 ins; 2 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/13969.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13969/head:pull/13969

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


More information about the serviceability-dev mailing list