On Mon, 13 Apr 2026 14:25:49 GMT, Anton Artemov <[email protected]> wrote:

> Hi, please consider the following changes:
> 
> this is a fix for a bug in the `ObjectMonitor::wait()` method introduced by 
> [8366659](https://bugs.openjdk.org/browse/JDK-8366659). This bug leads to 
> increased failure rate of `ownedMonitorsAndFrames003`, though the test was 
> very seldomly failing before 
> [8366659](https://bugs.openjdk.org/browse/JDK-8366659). The fix just brings 
> the failure rate back to where it used to be.
> 
> In short, [8366659](https://bugs.openjdk.org/browse/JDK-8366659) introduced a 
> code path where there was no handling of a suspension request until the 
> thread goes back to Java, which caused test failures slightly more often.
> 
> If `should_post_monitor_waited()` returns false, then a thread, which 
> timed-out waiting and got a suspension request, does not have any suspension 
> check.
> 
> Now the extra condition is removed and a thread in the `TS_RUN` state will 
> get its suspension request handled at the right place.
> 
> A separate test which triggers the condition is added.
> 
> Tested in tiers 1 - 7.
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

This pull request has now been integrated.

Changeset: d96d196c
Author:    Anton Artemov <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/d96d196ccebd4b336e246657f839769870a52107
Stats:     169 lines in 2 files changed: 163 ins; 2 del; 4 mod

8382088: ObjectMonitor::wait() lacks suspension handling for TS_RUN path

Reviewed-by: pchilanomate, fbredberg, dholmes

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

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

Reply via email to