Revert "Wrap rb_objspace_reachable_objects_from_root with RB_VM_LOCK"
This reverts commit 76dc327eeffefe02577999fe5f8215f762a581b6.
This commit is contained in:
parent
a1887f4dc2
commit
f1b95095d6
28
gc.c
28
gc.c
@ -11987,23 +11987,19 @@ objspace_reachable_objects_from_root(rb_objspace_t *objspace, void (func)(const
|
||||
{
|
||||
if (during_gc) rb_bug("objspace_reachable_objects_from_root() is not supported while during_gc == true");
|
||||
|
||||
RB_VM_LOCK_ENTER();
|
||||
{
|
||||
rb_ractor_t *cr = GET_RACTOR();
|
||||
struct root_objects_data data = {
|
||||
.func = func,
|
||||
.data = passing_data,
|
||||
};
|
||||
struct gc_mark_func_data_struct mfd = {
|
||||
.mark_func = root_objects_from,
|
||||
.data = &data,
|
||||
}, *prev_mfd = cr->mfd;
|
||||
rb_ractor_t *cr = GET_RACTOR();
|
||||
struct root_objects_data data = {
|
||||
.func = func,
|
||||
.data = passing_data,
|
||||
};
|
||||
struct gc_mark_func_data_struct mfd = {
|
||||
.mark_func = root_objects_from,
|
||||
.data = &data,
|
||||
}, *prev_mfd = cr->mfd;
|
||||
|
||||
cr->mfd = &mfd;
|
||||
gc_mark_roots(objspace, &data.category);
|
||||
cr->mfd = prev_mfd;
|
||||
}
|
||||
RB_VM_LOCK_LEAVE();
|
||||
cr->mfd = &mfd;
|
||||
gc_mark_roots(objspace, &data.category);
|
||||
cr->mfd = prev_mfd;
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
x
Reference in New Issue
Block a user