Project

General

Profile

Actions

Bug #11869

closed

random hang/SegFault when accessing a missing constant in irb

Added by postmodern (Hal Brodigan) over 8 years ago. Updated over 4 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-linux]
[ruby-core:72465]

Description

While testing ruby-2.2.4 on Fedora 22, I noticed that sometimes ruby would hang or segfault when accessing a missing constant within irb.

Steps to Reproduce

  1. /path/to/ruby-2.2.4/bin/irb
  2. type "FOO" and press enter
  3. Repeat step 2 until irb hangs or segfaults

Results

Here is the backtrace from an immediate segfault:

/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150: [BUG] Segmentation fault at 0x00000000000008
ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0023 p:---- s:0085 e:000084 CFUNC :readline
c:0022 p:0042 s:0080 e:000079 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150
c:0021 p:0011 s:0076 e:000075 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:469
c:0020 p:0040 s:0073 e:000072 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:623
c:0019 p:0009 s:0068 e:000067 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:468 [FINISH]
c:0018 p:---- s:0066 e:000065 CFUNC :call
c:0017 p:0015 s:0063 e:000062 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:188
c:0016 p:0015 s:0059 e:000058 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:103
c:0015 p:0022 s:0055 e:000054 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:205
c:0014 p:0042 s:0047 e:000046 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:75
c:0013 p:0044 s:0042 e:000041 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:282
c:0012 p:0013 s:0038 e:000037 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:264
c:0011 p:0022 s:0033 e:000032 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:235 [FINISH]
c:0010 p:---- s:0030 e:000029 CFUNC :loop
c:0009 p:0007 s:0027 e:000026 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:231 [FINISH]
c:0008 p:---- s:0025 e:000024 CFUNC :catch
c:0007 p:0015 s:0021 e:000020 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:230
c:0006 p:0030 s:0018 E:000a80 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:485
c:0005 p:0008 s:0015 e:000014 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:395 [FINISH]
c:0004 p:---- s:0013 e:000012 CFUNC :catch
c:0003 p:0143 s:0009 E:0002d0 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:394
c:0002 p:0021 s:0004 E:001a10 EVAL /home/hal/.rubies/ruby-2.2.4/bin/irb:11 [FINISH]
c:0001 p:0000 s:0002 E:001520 TOP [FINISH]

-- Ruby level backtrace information ----------------------------------------
/home/hal/.rubies/ruby-2.2.4/bin/irb:11:in <main>' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:394:in start'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:394:in catch' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:395:in block in start'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:485:in eval_input' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:230:in each_top_level_statement'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:230:in catch' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:231:in block in each_top_level_statement'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:231:in loop' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:235:in block (2 levels) in each_top_level_statement'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:264:in lex' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:282:in token'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:75:in match' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:205:in match_io'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:103:in getc' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:188:in buf_input'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:188:in call' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:468:in block in eval_input'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:623:in signal_status' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:469:in block (2 levels) in eval_input'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150:in gets' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150:in readline'

-- Machine register context ------------------------------------------------
RIP: 0x00007f2819de14ab RBP: 0x00007ffd2857d490 RSP: 0x00007ffd2857d470
RAX: 0x0000000000000000 RBX: 0x00005565b1567ce0 RCX: 0x0000000000000490
RDX: 0x0000000000000000 RDI: 0x00007ffd2857d490 RSI: 0x00005565b1567ce0
R8: 0x00007f281ac8c700 R9: 0x00007ffd2857d400 R10: 0x00007ffd2857d408
R11: 0x00007ffd2857d490 R12: 0x0000000000000001 R13: 0x00005565b13f1f00
R14: 0x00005565b163b400 R15: 0x0000000000000010 EFL: 0x0000000000010246

-- C level backtrace information -------------------------------------------
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_vm_bugreport+0x533) [0x5565af540403] vm_dump.c:693
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_bug_context+0xc8) [0x5565af5af668] error.c:425
/home/hal/.rubies/ruby-2.2.4/bin/ruby(sigsegv+0x3e) [0x5565af4b1aae] signal.c:879
/lib64/libpthread.so.0 [0x7f281a885430]
/lib64/libc.so.6(fputs+0x2b) [0x7f2819de14ab] iofputs.c:38
/lib64/libedit.so.0 [0x7f2812a0424d]
/lib64/libedit.so.0 [0x7f2812a0435c]
/lib64/libedit.so.0 [0x7f2812a0234e]
/lib64/libedit.so.0 [0x7f2812a00929]
/lib64/libedit.so.0(el_wgets+0x30d) [0x7f2812a00cbd]
/lib64/libedit.so.0(el_gets+0x19) [0x7f2812a115d9]
/lib64/libedit.so.0(readline+0xb0) [0x7f2812a0c960]
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_protect+0xf8) [0x5565af3eb828] eval.c:876
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/readline.so(readline_readline+0xb3) [0x7f2812c2cc33] readline.c:496
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_cfunc+0x13e) [0x5565af52adfe] vm_insnhelper.c:1380
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec_core+0x14c3) [0x5565af534ba3] insns.def:1070
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec+0x7b) [0x5565af5397fb] vm.c:1435
/home/hal/.rubies/ruby-2.2.4/bin/ruby(invoke_block_from_c+0x3e1) [0x5565af52c281] vm.c:813
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_invoke_proc+0xe0) [0x5565af52c660] vm.c:878
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_vm_invoke_proc+0x18) [0x5565af52c748] vm.c:897
/home/hal/.rubies/ruby-2.2.4/bin/ruby(proc_call+0x4f) [0x5565af3f0f1f] proc.c:731
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_cfunc+0x13e) [0x5565af52adfe] vm_insnhelper.c:1380
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec_core+0x14c3) [0x5565af534ba3] insns.def:1070
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec+0x7b) [0x5565af5397fb] vm.c:1435
/home/hal/.rubies/ruby-2.2.4/bin/ruby(invoke_block_from_c+0x3e1) [0x5565af52c281] vm.c:813
/home/hal/.rubies/ruby-2.2.4/bin/ruby(loop_i+0x4e) [0x5565af53d09e] vm.c:853
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_rescue2+0xbb) [0x5565af3eb54b] eval.c:808
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_f_loop+0x2b) [0x5565af52582b] vm_eval.c:1098
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_cfunc+0x13e) [0x5565af52adfe] vm_insnhelper.c:1380
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_method+0x11e) [0x5565af5329be] vm_insnhelper.c:1689
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec_core+0x1418) [0x5565af534af8] insns.def:1040
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec+0x7b) [0x5565af5397fb] vm.c:1435
/home/hal/.rubies/ruby-2.2.4/bin/ruby(invoke_block_from_c+0x3e1) [0x5565af52c281] vm.c:813
/home/hal/.rubies/ruby-2.2.4/bin/ruby(catch_i+0x5b) [0x5565af53d4fb] vm.c:853
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_catch_protect+0xaa) [0x5565af52bcaa] vm_eval.c:1996
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_f_catch+0x33) [0x5565af52be63] vm_eval.c:1975
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_cfunc+0x13e) [0x5565af52adfe] vm_insnhelper.c:1380
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_method+0x11e) [0x5565af5329be] vm_insnhelper.c:1689
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec_core+0x1418) [0x5565af534af8] insns.def:1040
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec+0x7b) [0x5565af5397fb] vm.c:1435
/home/hal/.rubies/ruby-2.2.4/bin/ruby(invoke_block_from_c+0x3e1) [0x5565af52c281] vm.c:813
/home/hal/.rubies/ruby-2.2.4/bin/ruby(catch_i+0x5b) [0x5565af53d4fb] vm.c:853
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_catch_protect+0xaa) [0x5565af52bcaa] vm_eval.c:1996
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_f_catch+0x33) [0x5565af52be63] vm_eval.c:1975
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_cfunc+0x13e) [0x5565af52adfe] vm_insnhelper.c:1380
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_call_method+0x11e) [0x5565af5329be] vm_insnhelper.c:1689
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec_core+0x1418) [0x5565af534af8] insns.def:1040
/home/hal/.rubies/ruby-2.2.4/bin/ruby(vm_exec+0x7b) [0x5565af5397fb] vm.c:1435
/home/hal/.rubies/ruby-2.2.4/bin/ruby(rb_iseq_eval_main+0x200) [0x5565af53b250] vm.c:1680
/home/hal/.rubies/ruby-2.2.4/bin/ruby(ruby_exec_internal+0xba) [0x5565af3e715a] eval.c:252
/home/hal/.rubies/ruby-2.2.4/bin/ruby(ruby_run_node+0x2f) [0x5565af3eadcf] eval.c:317
/home/hal/.rubies/ruby-2.2.4/bin/ruby(main+0x4b) [0x5565af3e6b5b] parse.y:7590

-- Other runtime information -----------------------------------------------

  • Loaded script: irb

  • Loaded features:

    0 enumerator.so
    1 rational.so
    2 complex.so
    3 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/encdb.so
    4 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/trans/transdb.so
    5 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/unicode_normalize.rb
    6 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/rbconfig.rb
    7 thread.rb
    8 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/thread.so
    9 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/compatibility.rb
    10 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/defaults.rb
    11 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/deprecate.rb
    12 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/errors.rb
    13 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/version.rb
    14 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/requirement.rb
    15 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/platform.rb
    16 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/basic_specification.rb
    17 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/stub_specification.rb
    18 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/util/stringio.rb
    19 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/specification.rb
    20 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/exceptions.rb
    21 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/core_ext/kernel_gem.rb
    22 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/monitor.rb
    23 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb
    24 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems.rb
    25 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/e2mmap.rb
    26 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/init.rb
    27 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/workspace.rb
    28 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/inspector.rb
    29 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/context.rb
    30 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/extend-command.rb
    31 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/output-method.rb
    32 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/notifier.rb
    33 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb
    34 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-token.rb
    35 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb
    36 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/src_encoding.rb
    37 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/magic-file.rb
    38 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/readline.so
    39 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb
    40 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/locale.rb
    41 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb
    42 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/path_support.rb
    43 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/rubygems/dependency.rb
    44 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/completion.rb

  • Process memory map:

5565af3c4000-5565af693000 r-xp 00000000 fd:0c 192368 /home/hal/.rubies/ruby-2.2.4/bin/ruby
5565af892000-5565af897000 r--p 002ce000 fd:0c 192368 /home/hal/.rubies/ruby-2.2.4/bin/ruby
5565af897000-5565af898000 rw-p 002d3000 fd:0c 192368 /home/hal/.rubies/ruby-2.2.4/bin/ruby
5565af898000-5565af8a9000 rw-p 00000000 00:00 0
5565b106b000-5565b165b000 rw-p 00000000 00:00 0 [heap]
7f2810a51000-7f2811340000 r--s 00000000 fd:00 287951 /usr/lib/debug/lib64/libc-2.21.so.debug
7f2811340000-7f2811540000 r--s 00000000 fd:00 270678 /usr/lib64/libc-2.21.so
7f2811540000-7f2811612000 r--s 00000000 fd:00 287977 /usr/lib/debug/lib64/libpthread-2.21.so.debug
7f2811612000-7f281238b000 r--s 00000000 fd:0c 192368 /home/hal/.rubies/ruby-2.2.4/bin/ruby
7f281238b000-7f28123a1000 r-xp 00000000 fd:00 269908 /usr/lib64/libgcc_s-5.3.1-20151207.so.1
7f28123a1000-7f28125a0000 ---p 00016000 fd:00 269908 /usr/lib64/libgcc_s-5.3.1-20151207.so.1
7f28125a0000-7f28125a1000 r--p 00015000 fd:00 269908 /usr/lib64/libgcc_s-5.3.1-20151207.so.1
7f28125a1000-7f28125a2000 rw-p 00016000 fd:00 269908 /usr/lib64/libgcc_s-5.3.1-20151207.so.1
7f28125a2000-7f28125c8000 r-xp 00000000 fd:00 271546 /usr/lib64/libtinfo.so.5.9
7f28125c8000-7f28127c7000 ---p 00026000 fd:00 271546 /usr/lib64/libtinfo.so.5.9
7f28127c7000-7f28127cb000 r--p 00025000 fd:00 271546 /usr/lib64/libtinfo.so.5.9
7f28127cb000-7f28127cc000 rw-p 00029000 fd:00 271546 /usr/lib64/libtinfo.so.5.9
7f28127cc000-7f28127f0000 r-xp 00000000 fd:00 271273 /usr/lib64/libncurses.so.5.9
7f28127f0000-7f28129ef000 ---p 00024000 fd:00 271273 /usr/lib64/libncurses.so.5.9
7f28129ef000-7f28129f0000 r--p 00023000 fd:00 271273 /usr/lib64/libncurses.so.5.9
7f28129f0000-7f28129f1000 rw-p 00024000 fd:00 271273 /usr/lib64/libncurses.so.5.9
7f28129f1000-7f2812a23000 r-xp 00000000 fd:00 270955 /usr/lib64/libedit.so.0.0.53
7f2812a23000-7f2812c22000 ---p 00032000 fd:00 270955 /usr/lib64/libedit.so.0.0.53
7f2812c22000-7f2812c24000 r--p 00031000 fd:00 270955 /usr/lib64/libedit.so.0.0.53
7f2812c24000-7f2812c25000 rw-p 00033000 fd:00 270955 /usr/lib64/libedit.so.0.0.53
7f2812c25000-7f2812c29000 rw-p 00000000 00:00 0
7f2812c29000-7f2812c2f000 r-xp 00000000 fd:0c 193209 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/readline.so
7f2812c2f000-7f2812e2e000 ---p 00006000 fd:0c 193209 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/readline.so
7f2812e2e000-7f2812e2f000 r--p 00005000 fd:0c 193209 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/readline.so
7f2812e2f000-7f2812e30000 rw-p 00006000 fd:0c 193209 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/readline.so
7f2812e30000-7f2812e33000 r-xp 00000000 fd:0c 193222 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/thread.so
7f2812e33000-7f2813033000 ---p 00003000 fd:0c 193222 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/thread.so
7f2813033000-7f2813034000 r--p 00003000 fd:0c 193222 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/thread.so
7f2813034000-7f2813035000 rw-p 00004000 fd:0c 193222 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/thread.so
7f2813035000-7f2813037000 r-xp 00000000 fd:0c 193253 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/trans/transdb.so
7f2813037000-7f2813237000 ---p 00002000 fd:0c 193253 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/trans/transdb.so
7f2813237000-7f2813238000 r--p 00002000 fd:0c 193253 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/trans/transdb.so
7f2813238000-7f2813239000 rw-p 00003000 fd:0c 193253 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/trans/transdb.so
7f2813239000-7f281323b000 r-xp 00000000 fd:0c 193230 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/encdb.so
7f281323b000-7f281343a000 ---p 00002000 fd:0c 193230 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/encdb.so
7f281343a000-7f281343b000 r--p 00001000 fd:0c 193230 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/encdb.so
7f281343b000-7f281343c000 rw-p 00002000 fd:0c 193230 /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/x86_64-linux/enc/encdb.so
7f281343c000-7f2819af6000 r--p 00000000 fd:00 269841 /usr/lib/locale/locale-archive
7f2819af6000-7f2819b6d000 r-xp 00000000 fd:00 277440 /usr/lib64/libfreebl3.so
7f2819b6d000-7f2819d6c000 ---p 00077000 fd:00 277440 /usr/lib64/libfreebl3.so
7f2819d6c000-7f2819d6e000 r--p 00076000 fd:00 277440 /usr/lib64/libfreebl3.so
7f2819d6e000-7f2819d6f000 rw-p 00078000 fd:00 277440 /usr/lib64/libfreebl3.so
7f2819d6f000-7f2819d73000 rw-p 00000000 00:00 0
7f2819d73000-7f2819f2a000 r-xp 00000000 fd:00 270678 /usr/lib64/libc-2.21.so
7f2819f2a000-7f281a129000 ---p 001b7000 fd:00 270678 /usr/lib64/libc-2.21.so
7f281a129000-7f281a12d000 r--p 001b6000 fd:00 270678 /usr/lib64/libc-2.21.so
7f281a12d000-7f281a12f000 rw-p 001ba000 fd:00 270678 /usr/lib64/libc-2.21.so
7f281a12f000-7f281a133000 rw-p 00000000 00:00 0
7f281a133000-7f281a23a000 r-xp 00000000 fd:00 271293 /usr/lib64/libm-2.21.so
7f281a23a000-7f281a439000 ---p 00107000 fd:00 271293 /usr/lib64/libm-2.21.so
7f281a439000-7f281a43a000 r--p 00106000 fd:00 271293 /usr/lib64/libm-2.21.so
7f281a43a000-7f281a43b000 rw-p 00107000 fd:00 271293 /usr/lib64/libm-2.21.so
7f281a43b000-7f281a442000 r-xp 00000000 fd:00 270871 /usr/lib64/libcrypt-2.21.so
7f281a442000-7f281a641000 ---p 00007000 fd:00 270871 /usr/lib64/libcrypt-2.21.so
7f281a641000-7f281a642000 r--p 00006000 fd:00 270871 /usr/lib64/libcrypt-2.21.so
7f281a642000-7f281a643000 rw-p 00007000 fd:00 270871 /usr/lib64/libcrypt-2.21.so
7f281a643000-7f281a671000 rw-p 00000000 00:00 0
7f281a671000-7f281a674000 r-xp 00000000 fd:00 271291 /usr/lib64/libdl-2.21.so
7f281a674000-7f281a873000 ---p 00003000 fd:00 271291 /usr/lib64/libdl-2.21.so
7f281a873000-7f281a874000 r--p 00002000 fd:00 271291 /usr/lib64/libdl-2.21.so
7f281a874000-7f281a875000 rw-p 00003000 fd:00 271291 /usr/lib64/libdl-2.21.so
7f281a875000-7f281a88c000 r-xp 00000000 fd:00 271321 /usr/lib64/libpthread-2.21.so
7f281a88c000-7f281aa8b000 ---p 00017000 fd:00 271321 /usr/lib64/libpthread-2.21.so
7f281aa8b000-7f281aa8c000 r--p 00016000 fd:00 271321 /usr/lib64/libpthread-2.21.so
7f281aa8c000-7f281aa8d000 rw-p 00017000 fd:00 271321 /usr/lib64/libpthread-2.21.so
7f281aa8d000-7f281aa91000 rw-p 00000000 00:00 0
7f281aa91000-7f281aab2000 r-xp 00000000 fd:00 269839 /usr/lib64/ld-2.21.so
7f281ab32000-7f281ab67000 r--s 00000000 fd:00 270955 /usr/lib64/libedit.so.0.0.53
7f281ab67000-7f281ab8a000 r--s 00000000 fd:00 271321 /usr/lib64/libpthread-2.21.so
7f281ab8a000-7f281ac90000 rw-p 00000000 00:00 0
7f281aca4000-7f281aca5000 rw-p 00000000 00:00 0
7f281aca5000-7f281acac000 r--s 00000000 fd:00 525551 /usr/lib64/gconv/gconv-modules.cache
7f281acac000-7f281acad000 ---p 00000000 00:00 0
7f281acad000-7f281acb1000 rw-p 00000000 00:00 0 [stack:31620]
7f281acb1000-7f281acb2000 r--p 00020000 fd:00 269839 /usr/lib64/ld-2.21.so
7f281acb2000-7f281acb3000 rw-p 00021000 fd:00 269839 /usr/lib64/ld-2.21.so
7f281acb3000-7f281acb4000 rw-p 00000000 00:00 0
7ffd27d82000-7ffd28581000 rw-p 00000000 00:00 0
7ffd285b3000-7ffd285b5000 r--p 00000000 00:00 0 [vvar]
7ffd285b5000-7ffd285b7000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]

Attempting to Ctrl^C the hanged irb produces the following backtrace:

/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150: [BUG] Segmentation fault at 0x007ff1e8a93ff8
ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0023 p:---- s:0085 e:000084 CFUNC :readline
c:0022 p:0042 s:0080 e:000079 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150
c:0021 p:0011 s:0076 e:000075 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:469
c:0020 p:0040 s:0073 e:000072 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:623
c:0019 p:0009 s:0068 e:000067 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:468 [FINISH]
c:0018 p:---- s:0066 e:000065 CFUNC :call
c:0017 p:0015 s:0063 e:000062 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:188
c:0016 p:0015 s:0059 e:000058 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:103
c:0015 p:0022 s:0055 e:000054 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:205
c:0014 p:0042 s:0047 e:000046 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:75
c:0013 p:0044 s:0042 e:000041 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:282
c:0012 p:0013 s:0038 e:000037 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:264
c:0011 p:0022 s:0033 e:000032 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:235 [FINISH]
c:0010 p:---- s:0030 e:000029 CFUNC :loop
c:0009 p:0007 s:0027 e:000026 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:231 [FINISH]
c:0008 p:---- s:0025 e:000024 CFUNC :catch
c:0007 p:0015 s:0021 e:000020 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:230
c:0006 p:0030 s:0018 E:001d40 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:485
c:0005 p:0008 s:0015 e:000014 BLOCK /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:395 [FINISH]
c:0004 p:---- s:0013 e:000012 CFUNC :catch
c:0003 p:0143 s:0009 E:000930 METHOD /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:394
c:0002 p:0021 s:0004 E:002190 EVAL /home/hal/.rubies/ruby-2.2.4/bin/irb:11 [FINISH]
c:0001 p:0000 s:0002 E:001ca0 TOP [FINISH]

-- Ruby level backtrace information ----------------------------------------
/home/hal/.rubies/ruby-2.2.4/bin/irb:11:in <main>' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:394:in start'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:394:in catch' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:395:in block in start'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:485:in eval_input' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:230:in each_top_level_statement'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:230:in catch' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:231:in block in each_top_level_statement'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:231:in loop' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:235:in block (2 levels) in each_top_level_statement'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:264:in lex' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:282:in token'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:75:in match' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/slex.rb:205:in match_io'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:103:in getc' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:188:in buf_input'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/ruby-lex.rb:188:in call' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:468:in block in eval_input'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:623:in signal_status' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb.rb:469:in block (2 levels) in eval_input'
/home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150:in gets' /home/hal/.rubies/ruby-2.2.4/lib/ruby/2.2.0/irb/input-method.rb:150:in readline'

-- Machine register context ------------------------------------------------
RIP: 0x00007ff1e7be778d RBP: 0x00000000ffffffff RSP: 0x00007ffe145bb8a0
RAX: 0x0000000000000000 RBX: 0x000055dc9b3c2d70 RCX: 0x000000009b3f1dc0
RDX: 0x00007ff1e8a94000 RDI: 0x00007ff1e8a94000 RSI: 0x00007ff1e8a94000
R8: 0x00007ff1e8a94000 R9: 0x0000000000000000 R10: 0x0000000000000022
R11: 0x0000000000000246 R12: 0x0000000000000000 R13: 0x00007ffe145bb9d0
R14: 0x000055dc9b3bbaa0 R15: 0x0000000000000010 EFL: 0x0000000000010206

-- C level backtrace information -------------------------------------------
*** Error in `irb': corrupted double-linked list: 0x000055dc9b3f1dc0 ***

Additional information

Ruby 2.2.4 was compiled against the system's readline-6.3 (5.fc22) package.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0