From: shugo@... Date: 2016-11-10T03:47:19+00:00 Subject: [ruby-core:78069] [Ruby trunk Bug#12916] TestRipper::Generic#test_parse_files causes SEGV Issue #12916 has been reported by Shugo Maeda. ---------------------------------------- Bug #12916: TestRipper::Generic#test_parse_files causes SEGV https://bugs.ruby-lang.org/issues/12916 * Author: Shugo Maeda * Status: Open * Priority: Normal * Assignee: * ruby -v: * Backport: 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN ---------------------------------------- TestRipper::Generic#test_parse_files sometimes causes SEGV. From http://rubyci.org/logs/www.rubyist.net/~akr/chkbuild/debian/ruby-trunk/log/20161110T024700Z.fail.html.gz: ``` 1) Failure: TestRipper::Generic#test_parse_files [/extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/ripper/test_files.rb:8]: pid 14881 killed by SIGABRT (signal 6) (core dumped) | (eval):1: [BUG] Segmentation fault at 0x000096 | ruby 2.4.0dev (2016-11-10 trunk 56686) [i686-linux] | | -- Control frame information ----------------------------------------------- | c:0009 p:---- s:0044 e:000043 CFUNC :inspect | c:0008 p:0016 s:0040 e:000039 METHOD (eval):1 [FINISH] | c:0007 p:---- s:0034 e:000033 CFUNC :parse | c:0006 p:0033 s:0030 e:000029 BLOCK -:15 | c:0005 p:0062 s:0027 e:000026 METHOD /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/test/unit/assertions.rb:177 | c:0004 p:0055 s:0016 e:000015 BLOCK -:14 [FINISH] | c:0003 p:---- s:0012 e:000011 CFUNC :each | c:0002 p:0117 s:0008 E:0009b8 EVAL -:12 [FINISH] | c:0001 p:0000 s:0003 E:002308 (none) [FINISH] | | -- Ruby level backtrace information ---------------------------------------- | -:12:in `
' | -:12:in `each' | -:14:in `block in
' | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/test/unit/assertions.rb:177:in `assert_nothing_raised' | -:15:in `block (2 levels) in
' | -:15:in `parse' | (eval):1:in `on_field' | (eval):1:in `inspect' | | -- Machine register context ------------------------------------------------ | GS: 0x00000033 FS: 0x00000000 ES: 0x0000007b DS: 0x0000007b EDI: 0x00000092 | ESI: 0x00000092 EBP: 0x00000ad1 ESP: 0xbfd035f0 EBX: 0xb77616d4 EDX: 0x00000ad1 | ECX: 0x00000000 EAX: 0x00000092 TRA: 0x0000000e ERR: 0x00000004 EIP: 0xb767112d | CS: 0x00000073 EFL: 0x00010296 UES: 0xbfd035f0 SS: 0x0000007b | | -- C level backtrace information ------------------------------------------- | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_vm_bugreport+0x6bc) [0xb768cc3c] vm_dump.c:679 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_bug_context+0x5f) [0xb75189cf] error.c:426 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(sigsegv+0x4c) [0xb760104c] signal.c:897 | [0xb776f40c] | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_search_method_entry+0x3d) [0xb767112d] ./include/ruby/ruby.h:1945 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_call0+0x27) [0xb76844c7] vm_eval.c:331 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_inspect+0x3e) [0xb758ad9e] object.c:505 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(inspect_ary+0x94) [0xb74af5b4] array.c:2106 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(exec_recursive+0x3e8) [0xb763ce78] thread.c:4627 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_ary_inspect+0x3e) [0xb74afece] array.c:2131 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(call_cfunc_0+0xe) [0xb766a6ce] vm_insnhelper.c:1579 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_call_cfunc+0x106) [0xb7670426] vm_insnhelper.c:1752 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_exec_core+0x251a) [0xb767c0ca] insns.def:1066 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_exec+0x73) [0xb767fc63] vm.c:1712 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_call0+0xcc) [0xb768456c] vm_eval.c:61 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_funcall+0x78) [0xb7685228] vm_eval.c:625 | [0xb716ab20] | [0xb716ac0c] | [0xb7172de0] | [0xb717d022] | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_ensure+0xd1) [0xb7521ac1] eval.c:910 | [0xb71672b3] | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(call_cfunc_0+0xe) [0xb766a6ce] vm_insnhelper.c:1579 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_call_cfunc+0x106) [0xb7670426] vm_insnhelper.c:1752 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_exec_core+0x251a) [0xb767c0ca] insns.def:1066 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_exec+0x73) [0xb767fc63] vm.c:1712 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(invoke_iseq_block_from_c+0x2ab) [0xb76806cb] vm.c:969 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(invoke_block_from_c_splattable+0xc9) [0xb7680ce9] vm.c:1032 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_yield+0x66) [0xb76816e6] vm.c:1069 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(rb_ary_each+0x43) [0xb74afa73] array.c:1824 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(call_cfunc_0+0xe) [0xb766a6ce] vm_insnhelper.c:1579 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_call_cfunc+0x106) [0xb7670426] vm_insnhelper.c:1752 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_call_method_each_type+0x115) [0xb76819f5] vm_insnhelper.c:2138 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_call_method+0xae) [0xb7681ece] vm_insnhelper.c:2291 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_exec_core+0x2b5a) [0xb767c70a] insns.def:967 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(vm_exec+0x73) [0xb767fc63] vm.c:1712 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(ruby_exec_internal+0xc5) [0xb751ebe5] eval.c:244 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(ruby_exec_node+0x24) [0xb7520964] eval.c:308 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0(ruby_run_node+0x36) [0xb75233d6] eval.c:300 | /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/ruby(main+0x7e) [0x804881e] main.c:36 | | -- Other runtime information ----------------------------------------------- | | * Loaded script: - | | * Loaded features: | | 0 enumerator.so | 1 thread.rb | 2 rational.so | 3 complex.so | 4 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/enc/encdb.so | 5 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/enc/trans/transdb.so | 6 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/lib/unicode_normalize.rb | 7 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/ripper.so | 8 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/common/ripper/core.rb | 9 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/common/ripper/lexer.rb | 10 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/common/ripper/filter.rb | 11 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/common/ripper/sexp.rb | 12 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/common/ripper.rb | 13 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/lib/optparse.rb | 14 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/rbconfig.rb | 15 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/leakchecker.rb | 16 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/minitest/unit.rb | 17 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/lib/prettyprint.rb | 18 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/lib/pp.rb | 19 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/test/unit/assertions.rb | 20 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/lib/open3.rb | 21 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/lib/timeout.rb | 22 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/find_executable.rb | 23 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/rbconfig/sizeof.so | 24 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/envutil.rb | 25 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/test/unit/testcase.rb | 26 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/test/lib/test/unit.rb | | * Process memory map: | | 08048000-08049000 r-xp 00000000 ca:05 9964424 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/ruby | 08049000-0804a000 rw-p 00000000 ca:05 9964424 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/ruby | 0829a000-0864e000 rw-p 0829a000 00:00 0 [heap] | b65ee000-b7113000 r--s 00000000 ca:05 9964009 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0 | b7113000-b7137000 r--s 00000000 ca:05 9964424 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/ruby | b7137000-b7153000 r-xp 00000000 ca:02 280165 /lib/i386-linux-gnu/libgcc_s.so.1 | b7153000-b7154000 rw-p 0001b000 ca:02 280165 /lib/i386-linux-gnu/libgcc_s.so.1 | b7163000-b7194000 r-xp 00000000 ca:05 257564 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/ripper.so | b7194000-b7195000 rw-p 00031000 ca:05 257564 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/ripper.so | b7195000-b7217000 rw-p b7195000 00:00 0 | b7217000-b737b000 r-xp 00000000 ca:02 281165 /lib/i386-linux-gnu/i686/nosegneg/libc-2.13.so | b737b000-b737c000 ---p 00164000 ca:02 281165 /lib/i386-linux-gnu/i686/nosegneg/libc-2.13.so | b737c000-b737e000 r--p 00164000 ca:02 281165 /lib/i386-linux-gnu/i686/nosegneg/libc-2.13.so | b737e000-b737f000 rw-p 00166000 ca:02 281165 /lib/i386-linux-gnu/i686/nosegneg/libc-2.13.so | b737f000-b7383000 rw-p b737f000 00:00 0 | b7383000-b73a7000 r-xp 00000000 ca:02 281175 /lib/i386-linux-gnu/i686/nosegneg/libm-2.13.so | b73a7000-b73a8000 r--p 00023000 ca:02 281175 /lib/i386-linux-gnu/i686/nosegneg/libm-2.13.so | b73a8000-b73a9000 rw-p 00024000 ca:02 281175 /lib/i386-linux-gnu/i686/nosegneg/libm-2.13.so | b73a9000-b73b2000 r-xp 00000000 ca:02 281171 /lib/i386-linux-gnu/i686/nosegneg/libcrypt-2.13.so | b73b2000-b73b3000 r--p 00008000 ca:02 281171 /lib/i386-linux-gnu/i686/nosegneg/libcrypt-2.13.so | b73b3000-b73b4000 rw-p 00009000 ca:02 281171 /lib/i386-linux-gnu/i686/nosegneg/libcrypt-2.13.so | b73b4000-b73db000 rw-p b73b4000 00:00 0 | b73db000-b73dd000 r-xp 00000000 ca:02 281173 /lib/i386-linux-gnu/i686/nosegneg/libdl-2.13.so | b73dd000-b73de000 r--p 00001000 ca:02 281173 /lib/i386-linux-gnu/i686/nosegneg/libdl-2.13.so | b73de000-b73df000 rw-p 00002000 ca:02 281173 /lib/i386-linux-gnu/i686/nosegneg/libdl-2.13.so | b73df000-b7452000 r-xp 00000000 ca:02 189135 /usr/lib/i386-linux-gnu/libgmp.so.10.0.5 | b7452000-b7459000 rw-p 00073000 ca:02 189135 /usr/lib/i386-linux-gnu/libgmp.so.10.0.5 | b7459000-b7460000 r-xp 00000000 ca:02 281197 /lib/i386-linux-gnu/i686/nosegneg/librt-2.13.so | b7460000-b7461000 r--p 00006000 ca:02 281197 /lib/i386-linux-gnu/i686/nosegneg/librt-2.13.so | b7461000-b7462000 rw-p 00007000 ca:02 281197 /lib/i386-linux-gnu/i686/nosegneg/librt-2.13.so | b7462000-b7463000 rw-p b7462000 00:00 0 | b7463000-b7478000 r-xp 00000000 ca:02 278546 /lib/i386-linux-gnu/i686/nosegneg/libpthread-2.13.so | b7478000-b7479000 ---p 00015000 ca:02 278546 /lib/i386-linux-gnu/i686/nosegneg/libpthread-2.13.so | b7479000-b747a000 r--p 00015000 ca:02 278546 /lib/i386-linux-gnu/i686/nosegneg/libpthread-2.13.so | b747a000-b747b000 rw-p 00016000 ca:02 278546 /lib/i386-linux-gnu/i686/nosegneg/libpthread-2.13.so | b747b000-b747d000 rw-p b747b000 00:00 0 | b747e000-b747f000 rw-p b747e000 00:00 0 | b747f000-b7481000 r-xp 00000000 ca:05 257562 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/rbconfig/sizeof.so | b7481000-b7482000 rw-p 00001000 ca:05 257562 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/rbconfig/sizeof.so | b7482000-b7484000 r-xp 00000000 ca:05 257624 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/enc/trans/transdb.so | b7484000-b7485000 rw-p 00001000 ca:05 257624 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/enc/trans/transdb.so | b7485000-b7487000 r-xp 00000000 ca:05 257585 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/enc/encdb.so | b7487000-b7488000 rw-p 00001000 ca:05 257585 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/.ext/i686-linux/enc/encdb.so | b7488000-b7489000 ---p b7488000 00:00 0 | b7489000-b748c000 rw-p b7489000 00:00 0 | b748c000-b775e000 r-xp 00000000 ca:05 9964009 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0 | b775e000-b7764000 rw-p 002d1000 ca:05 9964009 /extdisk/chkbuild/chkbuild/tmp/build/20161110T024700Z/ruby/libruby.so.2.4.0 | b7764000-b776f000 rw-p b7764000 00:00 0 | b776f000-b7770000 r-xp b776f000 00:00 0 [vdso] | b7770000-b778c000 r-xp 00000000 ca:02 278605 /lib/i386-linux-gnu/ld-2.13.so | b778c000-b778d000 r--p 0001b000 ca:02 278605 /lib/i386-linux-gnu/ld-2.13.so | b778d000-b778e000 rw-p 0001c000 ca:02 278605 /lib/i386-linux-gnu/ld-2.13.so | bd509000-bfd08000 rw-p bd800000 00:00 0 [stack] | | | [NOTE] | You may have encountered a bug in the Ruby interpreter or extension libraries. | Bug reports are welcome. | For details: http://www.ruby-lang.org/bugreport.html | ``` -- https://bugs.ruby-lang.org/ Unsubscribe: