From: s.wanabe@... Date: 2019-05-07T13:42:34+00:00 Subject: [ruby-core:92584] [Ruby trunk Bug#15809] GC.verify_compaction_references - intermittent SEGV's on multiple platforms Issue #15809 has been updated by wanabe (_ wanabe). Recursive finalizer definition raises a similar error on my environment. ``` $ ./miniruby -ve 'def foo(c = 10); ObjectSpace.define_finalizer(Object.new) { foo(c - 1) } if c > 0; end; 10.times do foo; GC.verify_compaction_references end' ruby 2.7.0dev (2019-05-06 trunk c3cf1ef9bb) [x86_64-linux] -e:1: [BUG] ROOT finalizers points to MOVED: 0x000055eb4bfdfd18 -> 0x000055eb4c041040 [0 ] T_ARRAY [E ] len: 1 (embed) ruby 2.7.0dev (2019-05-06 trunk c3cf1ef9bb) [x86_64-linux] -- Control frame information ----------------------------------------------- c:0005 p:---- s:0017 e:000016 CFUNC :verify_compaction_references c:0004 p:0016 s:0013 e:000012 BLOCK -e:1 [FINISH] c:0003 p:---- s:0010 e:000009 CFUNC :times (snip) ``` Note: this script is inspired by "lib/drb/timeridconv.rb". ---------------------------------------- Bug #15809: GC.verify_compaction_references - intermittent SEGV's on multiple platforms https://bugs.ruby-lang.org/issues/15809#change-77946 * Author: MSP-Greg (Greg L) * Status: Assigned * Priority: Normal * Assignee: tenderlovemaking (Aaron Patterson) * Target version: * ruby -v: ruby 2.7.0dev (2019-05-06 trunk c3cf1ef9bb) [x64-mingw32 * Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN ---------------------------------------- See https://travis-ci.org/ruby/ruby/jobs/525627187#L2684 https://ci.appveyor.com/project/ruby/ruby/builds/24138134/job/i7e441u7se11w7ey#L3402 Both have an error similar to: ``` /ruby/test/ruby/test_gc_compact.rb:128: [BUG] ROOT finalizers points to MOVED: 0x0000000004679c20 -> 0x00000000089367c0 [0 ] T_ARRAY [E ] len: 1 (embed) ``` ruby-loco has also failed with a similar error. Attached STDERR output. ---Files-------------------------------- test_all_err.log (42 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: