From: Eric Wong Date: 2017-09-06T22:57:23+00:00 Subject: [ruby-core:82684] Re: [Ruby trunk Bug#13875] segfault in Enumerable#zip after GC xkernigh@netscape.net wrote: > https://bugs.ruby-lang.org/issues/13875#change-66516 > But this trick might not be the correct fix. I fear a problem > with fibers, because there is a fiber switch when zip_i() > calls Enumerator#next. Perhaps the GC can't find tmp while the > other fiber is running. Is FIBER_USE_NATIVE enabled in cont.c? Does the problem go away if you flip that? Also, which compiler + non-standard CFLAGS do you use? We don't have a lot of OpenBSD users here; +cc Jeremy... Does this affect older versions of Ruby, too? We've had some recent movement in cont.c in trunk and maybe broke something in Fiber stack marking... I'm also curious which RB_GC_GUARD implementation you use (it's compiler-dependent). The rb_gc_guarded_ptr_val one in include/ruby/ruby.h should be strongest since it can't be inlined (but slowest). Perhaps try that one if you're not using it... Thanks. Unsubscribe: