From: Yusuke Endoh Date: 2010-06-27T23:40:30+09:00 Subject: [ruby-dev:41744] [Bug #3398][Assigned] 1.9.2 SEGV during test-all チケット #3398 が更新されました。 (by Yusuke Endoh) ステータス ClosedからAssignedに変更 担当者 Yuki SonodaからNarihiro Nakamuraに変更 Target version 1.9.2から1.9.xに変更 遠藤です。 この問題は ruby_1_9_2 では r28191 で解決されましたが、どうやら trunk で残っているようです。#1934 を valgrind の下で実行すると freelist の参照が free 済みの領域を指してしまっていることが わかります。 lazy sweep の影響でコードが変わっているあたりということなので、 nari さんに見ていただければと思います。 ... # of primes: 129 results: [] prime: 739 process time: 189.97 # of primes: 130 results: [] prime: 743 process time: 197.16 # of primes: 131 results: [] prime: 751 process time: 205.02 ==24732== ==24732== Invalid read of size 4 ==24732== at 0x8068492: rb_newobj (gc.c:1049) ==24732== by 0x817CDFB: ary_new (array.c:297) ==24732== by 0x817EA16: rb_ary_combination (array.c:331) ==24732== by 0x815AC61: vm_call0 (vm_eval.c:78) ==24732== by 0x815B98F: iterate_method (vm_eval.c:234) ==24732== by 0x81557C7: rb_iterate (vm_eval.c:851) ==24732== by 0x815595E: rb_block_call (vm_eval.c:931) ==24732== by 0x81A95FA: enumerator_each (enumerator.c:317) ==24732== by 0x815AC61: vm_call0 (vm_eval.c:78) ==24732== by 0x815B98F: iterate_method (vm_eval.c:234) ==24732== by 0x81557C7: rb_iterate (vm_eval.c:851) ==24732== by 0x815595E: rb_block_call (vm_eval.c:931) ==24732== Address 0x501c4d4 is 116 bytes inside a block of size 16,384 free'd ==24732== at 0x4022B8A: free (vg_replace_malloc.c:323) ==24732== by 0x806375C: free_unused_heaps (gc.c:1869) ==24732== by 0x816E2C4: rb_threadptr_execute_interrupts_rec (thread.c:1295) ==24732== by 0x816E58E: rb_thread_check_ints (thread.c:968) ==24732== by 0x81A616E: collect_all (enum.c:379) ==24732== by 0x8159C67: vm_yield_with_cfunc (vm_insnhelper.c:724) ==24732== by 0x8165CDE: rb_yield (vm.c:587) ==24732== by 0x817EA75: rb_ary_combination (array.c:4078) ==24732== by 0x815AC61: vm_call0 (vm_eval.c:78) ==24732== by 0x815B98F: iterate_method (vm_eval.c:234) ==24732== by 0x81557C7: rb_iterate (vm_eval.c:851) ==24732== by 0x815595E: rb_block_call (vm_eval.c:931) -- Yusuke Endoh ---------------------------------------- http://redmine.ruby-lang.org/issues/show/3398 ---------------------------------------- http://redmine.ruby-lang.org