diff options
author | Koichi Sasada <ko1@atdot.net> | 2020-12-18 08:25:24 +0900 |
---|---|---|
committer | Koichi Sasada <ko1@atdot.net> | 2020-12-18 08:26:25 +0900 |
commit | 29e42b8bfdfc7a2d879a4ddb1db3d4453d66143a (patch) | |
tree | 14c9cef6482e581efd2ea35a83ad27a1e570726a /gc.c | |
parent | 895b10ad020a788566c6e35431d07e6121e38c87 (diff) |
add explicit check
To debug this issue:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20201217T220004Z.fail.html.gz
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -8439,12 +8439,12 @@ gc_enter_count(enum gc_enter_event event) static inline void gc_enter(rb_objspace_t *objspace, enum gc_enter_event event, unsigned int *lock_lev) { - // stop other ractors RB_VM_LOCK_ENTER_LEV(lock_lev); switch (event) { case gc_enter_event_start: case gc_enter_event_mark_continue: + // stop other ractors rb_vm_barrier(); break; default: @@ -8452,7 +8452,7 @@ gc_enter(rb_objspace_t *objspace, enum gc_enter_event event, unsigned int *lock_ } gc_enter_count(event); - GC_ASSERT(during_gc == 0); + if (UNLIKELY(during_gc != 0)) rb_bug("during_gc != 0"); if (RGENGC_CHECK_MODE >= 3) gc_verify_internal_consistency(objspace); mjit_gc_start_hook(); |