RFR: 8373118: Test java/lang/Thread/virtual/Starvation.java timed out [v23]

Viktor Klang vklang at openjdk.org
Mon Jan 12 12:49:29 UTC 2026


On Sun, 11 Jan 2026 17:11:38 GMT, Doug Lea <dl at openjdk.org> wrote:

>> Changes signal filtering to avoid possible starvation
>
> Doug Lea has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 33 additional commits since the last revision:
> 
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - reunify push; improve contention vs activation vs park balance
>  - Undo unrelated change
>  - Re-introduce acquiring array reads; re-arrange to rely on volatile base index
>  - Change signalWork fencing; in-progress activation changes
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - Split external push
>  - Undo/redo ordering changes
>  - Strengthen some orderings
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - ... and 23 more: https://git.openjdk.org/jdk/compare/af30d06a...f42d2475

src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 1830:

> 1828:         int pc = parallelism, i, sp; // rely on caller sync for initial reads
> 1829:         long c = U.getLong(this, CTL);
> 1830:         WorkQueue[] qs = queues;

If we only read this on entry, doesn't that risk not observing the number of queues growing?

src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 1854:

> 1852:                 break;
> 1853:             }
> 1854:             qs = queues;

Regarding https://github.com/openjdk/jdk/pull/28797/changes#r2682127585 , so we're refresh-reading it here, relying on (at least) the https://github.com/openjdk/jdk/pull/28797/changes#diff-e398beb49cd8d3e6c2f3a8ca8eee97172c57d7f88f3ccd8a3c704632cab32f5fR1844 load?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28797#discussion_r2682127585
PR Review Comment: https://git.openjdk.org/jdk/pull/28797#discussion_r2682133420


More information about the core-libs-dev mailing list