General

Profile

luke-gru (Luke Gruber)

  • Login: luke-gru
  • Email: luke.gru@gmail.com
  • Registered on: 08/19/2011
  • Last sign in: 04/17/2026

Issues

open closed Total
Assigned issues 1 21 22
Reported issues 12 51 63

Projects

Project Roles Registered on
Ruby Committer 06/19/2025

Activity

04/17/2026

05:50 PM Ruby Bug #21993: `rb_gc_update_tbl_refs` is incorrectly documented as the dcompact pair for `rb_mark_tbl_no_pin`, and is unsafe for `st_table`s with non-VALUE keys
Oh yeah, thanks. There's even a helpful comment for it. I think changing `rb_gc_update_tbl_refs` to only move values probably makes sense. We could add something like `rb_mark_hash_nopin_values` where it marks values for moving but pins ... luke-gru (Luke Gruber)

04/16/2026

11:03 PM Ruby Bug #21993: `rb_gc_update_tbl_refs` is incorrectly documented as the dcompact pair for `rb_mark_tbl_no_pin`, and is unsafe for `st_table`s with non-VALUE keys
Looking into this further, it looks like `gc_update_table_refs` is only used once internally, with the finalizer_table. It looks to me like it's used wrong there because the key (finalized object) is not pinned so can be moved, but the s... luke-gru (Luke Gruber)
09:50 PM Ruby Bug #21993: `rb_gc_update_tbl_refs` is incorrectly documented as the dcompact pair for `rb_mark_tbl_no_pin`, and is unsafe for `st_table`s with non-VALUE keys
Nice catch! I think this would only be a problem if the key was a number that was also a valid pointer into the Ruby heap and it happened to point to a T_MOVED object. If it's another pointer from malloc or xmalloc it shouldn't be an iss... luke-gru (Luke Gruber)

03/10/2026

08:27 PM Ruby Bug #21926: Thread#value on popen3 wait thread hangs in finalizer
A note to whoever backports this (which could be me, I'm just waiting ~ 1 week and checking various CIs after the merge):
https://github.com/ruby/ruby/pull/16362 should be backported as well, they are really 1 fix in 2 separate commit...
luke-gru (Luke Gruber)

03/09/2026

05:29 PM Ruby Bug #21876 (Third Party's Issue): Addrinfo.getaddrinfo(AF_UNSPEC) deadlocks after fork on macOS for IPv4-only hosts
luke-gru (Luke Gruber)
05:16 PM Ruby Bug #21876: Addrinfo.getaddrinfo(AF_UNSPEC) deadlocks after fork on macOS for IPv4-only hosts
I'm getting a segfault when running your minimal reproduction script on my Macbook Pro (`Darwin Mac 25.2.0 Darwin Kernel Version 25.2.0 (Apple Silicon)`).
I get the segfault when compiling under all 3 `GETADDRINFO_IMPL` implementations ...
luke-gru (Luke Gruber)

03/06/2026

03:27 PM Ruby Bug #21873: `UnboundMethod#==` returns false for methods from included/extended modules
3.4 backport PR: https://github.com/ruby/ruby/pull/16326 luke-gru (Luke Gruber)

03/05/2026

07:37 PM Ruby Bug #21926: Thread#value on popen3 wait thread hangs in finalizer
Thank you for the nice reproduction! We have a fix coming, and it will probably be backported to 3.3, 3.4 and 4.0.
The fix is at https://github.com/ruby/ruby/pull/16307.
luke-gru (Luke Gruber)

01/29/2026

02:26 PM Ruby Bug #21840 (Open): Locking a mutex can lead to starvation
I wasn't aware of those old issues. I'll take a look, thanks!
I reverted the commit because of issues with a `Monitor` test in CI. I thought it was related to this change, but the test kept failing even after the revert. It turns out it...
luke-gru (Luke Gruber)

01/22/2026

07:30 PM Ruby Bug #21836: RUBY_MN_THREADS deadlock and sleep issues
I'm confused about what should happen. Shouldn't it return roughly after 1 second instead of 10 seconds? I'll look into the sleep issue with `RUBY_MN_THREADS=1`, but I can't reproduce the deadlock or segfault with a more recent commit (a... luke-gru (Luke Gruber)

Also available in: Atom