On Wed, 21 Jan 2026 04:46:56 GMT, Patricio Chilano Mateo
<[email protected]> wrote:
>> I think Dan is right that this has changed the behaviour by deciding
>> `was_notified` earlier in the process. Now this check:
>>
>> 1882 if (interrupted || HAS_PENDING_EXCEPTION) {
>> 1883 was_notified = false;
>>
>> will supercede the fact we could actually have been notified. And that is a
>> problem because if the current was notified but now throws
>> InterruptedException then we lose the notification. I think my suggestion
>> to set `was_notified` at 1883 was wrong - we need to undo that.
>>
>> The key point is that if we unlink ourselves then we were definitely not
>> notified; otherwise we must have been.
>
> Might be clearer to move `bool was_notified = true;` right before the branch
> at L1908 where we determine if there was a notification or not.
I think we just undo this recent change, moving `bool was_notified = true;` to
L1908 is not possible as it is used further at L2012 outside of this huge code
block. So it has to be declared where it used to be.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/27040#discussion_r2712552530