summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorHParker <HParker@github.com>2023-12-14 12:03:00 -0800
committerPeter Zhu <peter@peterzhu.ca>2023-12-15 10:31:15 -0500
commit474b4c42f4d1c36d94548548e03f6649f2119f67 (patch)
tree4728bbb61e435983e68a2dcc0d3cc95e30ddf586 /vm.c
parent049a9bd62f0907caa8d2eca6337cd2542a5c7726 (diff)
free ractors with ractor_free
Previously with RUBY_FREE_ON_EXIT, ractors where being xfree-ed which is incorrect since they are not xmalloced. Instead we can free ractors with ractor free during shutdown. This change only effects main ractor freeing when RUBY_FREE_ON_EXIT is set. Co-authored-by: John Hawthorn <john@hawthorn.email>
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/vm.c b/vm.c
index f247838764..079809e05f 100644
--- a/vm.c
+++ b/vm.c
@@ -3006,9 +3006,6 @@ ruby_vm_destruct(rb_vm_t *vm)
rb_free_warning();
rb_free_rb_global_tbl();
rb_free_loaded_features_index(vm);
- rb_ractor_t *r = vm->ractor.main_ractor;
- xfree(r->sync.recv_queue.baskets);
- xfree(r->sync.takers_queue.baskets);
rb_id_table_free(vm->negative_cme_table);
st_free_table(vm->overloaded_cme_table);
@@ -3060,7 +3057,6 @@ ruby_vm_destruct(rb_vm_t *vm)
rb_objspace_free_objects(objspace);
rb_free_generic_iv_tbl_();
if (th) {
- xfree(th->ractor);
xfree(stack);
ruby_mimfree(th);
}