On Wed, 24 Dec 2025 19:21:39 GMT, Doug Lea <[email protected]> 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 21 additional commits since 
> the last revision:
> 
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - recheck avoiding cross-class offsets
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - Check reworked ordering control
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - Check diagnosis
>  - Avoid double-filtering
>  - Merge branch 'openjdk:master' into JDK-8373118
>  - ... and 11 more: https://git.openjdk.org/jdk/compare/67e1f04f...228ec84d

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

> 1979:                                     if (src != qid)
> 1980:                                         w.source = src = qid;
> 1981:                                     w.topLevelExec(t, fifo);

Given that topLevelExec is tiny, and only called from this line, it might be 
better to just inline it here, since we know that `t` is originally not-null 
here, we can defer the initial null-check to only apply to subsequent tasks:


            do {
                t.doExec();
            } while ((t = w.nextLocalTask(fifo)) != null);

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

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

Reply via email to