Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Jan 27, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

luke-gruber and others added 11 commits January 26, 2026 14:34
Continually locking a mutex m can lead to starvation if all other threads are on the waitq of m.

See https://bugs.ruby-lang.org/issues/21840 for more details.

Solution:

When a thread `T1` wakes up `T2` during mutex unlock but `T1` or any other thread successfully acquires it
before `T2`, then we record the `running_time` of the thread during mutex acquisition. Then during unlock, if
that thread's running_time is less than the saved running time, we set it back to the saved time.

Fixes [Bug #21840]
We would like to do type matching on the VRegId.  Extracting the VRegID
from a usize makes the code a bit easier to understand and refactor.
MemBase uses a VReg, and there is also a VReg in Opnd.  We should be
sharing types between these two, so this is a step in the direction of
sharing a type
Until we get our global register allocator, we need our HIR to be in
100% block-local SSA. Add a validator to enforce that.
The RDoc link format has changed so these are all broken links.
The RDoc link format has changed so these are all broken links.

ruby/net-http@97fe6085c3
@pull pull bot locked and limited conversation to collaborators Jan 27, 2026
@pull pull bot added the ⤵️ pull label Jan 27, 2026
@pull pull bot merged commit ade85c4 into turkdevops:master Jan 27, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants