Skip to content

Conversation

@wks
Copy link
Collaborator

@wks wks commented Jan 28, 2026

We tidied the code a bit by moving work packets related to global weak tables to a dedicated module.

Using the newly introduced rb_mmtk_obj_need_cleanup_p function upstream, we skip objects that don't need cleaning up when processing obj_free candidates.

We also fixed some eBPF probes and visualization.

wks added 4 commits January 27, 2026 14:47
We make use of the new upstream API `rb_mmtk_obj_need_cleanup_p` so that
we don't call the expensive `obj_free` when an obj_free candidate dies.
We temporarily excluded `weak_st_par_*` from capture_ruby.bt because we
no longer process st_table instances in parallel by default.

We replaced the probe for `update_weak_fields` which no longer exists
with `process_weak_references`.
We merged the ruby repo with the latest master branch.  We added support
for the newly introduced `rb_gc_obj_needs_cleanup_p` function.
@wks
Copy link
Collaborator Author

wks commented Jan 28, 2026

test_dns failed with time-out. It is likely a temporary network error. I'll restart the test.

@wks wks merged commit c400945 into mmtk:master Jan 28, 2026
19 of 20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant