-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
abandoned_in_gc
not empty in MarkSweep
#84
Comments
This is reproducible on macos if you set the max heap lower. If you're on macos this will segv almost every time. I turned off the rust log so we don't get other failures due to stdout.
I then narrowed it down to two tests by running not in parallel. I can reproduce this with a combination of
|
I've narrowed this down to two tests those files. Here's a really small repro script. It doesn't actually require lowering the memory to repro now. def test_finalizer_thread_raise
Thread.new do
end
GC.start
end
def test_free_with_func
GC.start
end
test_finalizer_thread_raise
test_free_with_func |
The bug is in the Ruby binding. The return value of
Ruby caches native threads, and Function The proper fix is to use the same loop in the current |
This commit adds assertions about the number of mutators and the list of mutators returned from the VM binding. Also asserts that epilogues are not silently dropped before they are executed. It could happen if a buggy VM binding returns a number of mutators that does not match the actual list of mutators. This should detect bugs like mmtk/mmtk-ruby#84
This commit adds assertions about the number of mutators and the list of mutators returned from the VM binding. Also asserts that epilogues are not silently dropped before they are executed. It could happen if a buggy VM binding returns a number of mutators that does not match the actual list of mutators. This should detect bugs like mmtk/mmtk-ruby#84
Updated the `ruby` repo revision to fix a bug where the number of mutators returned from `ActivePlan::number_of_mutators` does not match the number of mutators returned from `ActivePlan::mutators`. Also updated the `mmtk-core` repo revision. More assertions are added so that such bugs can be detected earlier. mmtk-core PR: mmtk/mmtk-core#1182 ruby PR: mmtk/ruby#84 Fixes: mmtk#84
This commit adds assertions about the number of mutators and the list of mutators returned from the VM binding. Also asserts that epilogues are not silently dropped before they are executed. It could happen if a buggy VM binding returns a number of mutators that does not match the actual list of mutators. This should detect bugs like mmtk/mmtk-ruby#84
This commit adds assertions about the number of mutators and the list of mutators returned from the VM binding. Also asserts that epilogues are not silently dropped before they are executed. It could happen if a buggy VM binding returns a number of mutators that does not match the actual list of mutators. This should detect bugs like mmtk/mmtk-ruby#84
It previously returns the number of threads, including cached threads not executing Ruby code. That is inconsistent with the number of mutators returned from rb_mmtk_get_mutators. This commit reimplementa rb_mmtk_number_of_mutators with rb_mmtk_get_mutators to ensure they see the same number of mutators. Fixes: mmtk/mmtk-ruby#84
@eileencodes The PR mmtk/ruby#84 for the The PR #92 for the |
This commit adds assertions about the number of mutators and the list of mutators returned from the VM binding. Also asserts that epilogues are not silently dropped before they are executed. It could happen if a buggy VM binding returns a number of mutators that does not match the actual list of mutators. This should detect bugs like mmtk/mmtk-ruby#84
Updated the `ruby` repo revision to fix a bug where the number of mutators returned from `ActivePlan::number_of_mutators` does not match the number of mutators returned from `ActivePlan::mutators`. Also updated the `mmtk-core` repo revision. More assertions are added so that such bugs can be detected earlier. mmtk-core PR: mmtk/mmtk-core#1182 ruby PR: mmtk/ruby#84 Fixes: #84 --------- Co-authored-by: mmtkgc-bot <mmtkgc.bot@gmail.com>
We observed this assertion error when running MarkSweep: https://github.com/mmtk/mmtk-ruby/actions/runs/9853731634/job/27204907289?pr=83
The text was updated successfully, but these errors were encountered: