Project

General

Profile

Actions

Bug #11686

closed

Segmentation fault/memory corruption with --enable-frozen-string-literal-debug --enable-frozen-string-literal

Added by jsc (Justin Collins) over 8 years ago. Updated over 4 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.3.0preview1 (2015-11-11 trunk 52539) [x86_64-linux]
[ruby-core:71487]

Description

This issue manifests when using the ruby_parser gem version 3.7.2.

To reproduce:

  • gem install ruby_parser -v 3.7.2
  • ruby --enable-frozen-string-literal-debug --enable-frozen-string-literal -e "require 'ruby_parser'"

Sample output:

$ ruby --enable-frozen-string-literal-debug --enable-frozen-string-literal -e "require 'ruby_parser'"
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- 744,,,744,,744,,744,,744,,,,,,,,744,,,,,744,744,744,744,744,744,,,,744 (LoadError)
	from /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:54:in `require'
	from /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:11:in `<class:Ruby20Parser>'
	from /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:8:in `<top (required)>'
	from /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:54:in `require'
	from /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:54:in `require'
	from /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby_parser.rb:3:in `<top (required)>'
	from /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:128:in `require'
	from /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:128:in `rescue in require'
	from /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:39:in `require'
	from -e:1:in `<main>'

The values after "cannot load such file -- " vary.

Often it results in a segfault, like below:

$ ruby --enable-frozen-string-literal-debug --enable-frozen-string-literal -e "require 'ruby_parser'"
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:873: [BUG] Segmentation fault at 0x00000000000044
ruby 2.3.0preview1 (2015-11-11 trunk 52539) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0014 p:0009 s:0071 e:000069 BLOCK  /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:873 [FINISH]
c:0013 p:---- s:0067 e:000066 CFUNC  :each
c:0012 p:0017 s:0064 e:000063 BLOCK  /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:872 [FINISH]
c:0011 p:---- s:0061 e:000060 CFUNC  :each
c:0010 p:1765 s:0058 e:000057 CLASS  /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:871
c:0009 p:0026 s:0039 e:000038 TOP    /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:8 [FINISH]
c:0008 p:---- s:0037 e:000036 CFUNC  :require
c:0007 p:0124 s:0033 e:000032 METHOD /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:54
c:0006 p:0026 s:0023 e:000022 TOP    /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby_parser.rb:3 [FINISH]
c:0005 p:---- s:0021 e:000020 CFUNC  :require
c:0004 p:0091 s:0017 e:000016 RESCUE /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:128
c:0003 p:0419 s:0014 e:000013 METHOD /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:39
c:0002 p:0008 s:0004 E:000620 EVAL   -e:1 [FINISH]
c:0001 p:0000 s:0002 E:0008b0 (none) [FINISH]

-- Ruby level backtrace information ----------------------------------------
-e:1:in `<main>'
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:39:in `require'
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:128:in `rescue in require'
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:128:in `require'
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby_parser.rb:3:in `<top (required)>'
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:8:in `<top (required)>'
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:871:in `<class:Ruby20Parser>'
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:871:in `each'
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:872:in `block in <class:Ruby20Parser>'
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:872:in `each'
/home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby20_parser.rb:873:in `block (2 levels) in <class:Ruby20Parser>'

-- Machine register context ------------------------------------------------
 RIP: 0x00007fb3bb679e85 RBP: 0x0000000000000098 RSP: 0x00007ffc38862de8
 RAX: 0x0000000000000044 RBX: 0x0000000002b4e608 RCX: 0x0000000000000000
 RDX: 0x00007ffc38862df8 RDI: 0x0000000000000044 RSI: 0x0000000000000098
  R8: 0x0000000020502824  R9: 0x0000000020502825 R10: 0x0000000000000098
 R11: 0x0000000000000001 R12: 0x00007ffc38862df8 R13: 0x0000000002b4e608
 R14: 0x00007ffc38862e40 R15: 0x00007fb3bbbcdc90 EFL: 0x0000000000010206

-- C level backtrace information -------------------------------------------
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_vm_bugreport+0x4ea) [0x7fb3bb6d97fa] vm_dump.c:688
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_bug_context+0xd4) [0x7fb3bb56d644] error.c:420
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(sigsegv+0x3e) [0x7fb3bb649cfe] signal.c:886
/lib64/libpthread.so.0 [0x7fb3bb2e0180]
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_id_table_lookup+0x35) [0x7fb3bb679e85] id_table.c:1250
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(method_entry_get_without_cache+0x4c) [0x7fb3bb6bd1ac] vm_method.c:170
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_search_method.isra.79+0xc3) [0x7fb3bb6be5c3] vm_method.c:779
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec_core+0x22ce) [0x7fb3bb6cac4e] insns.def:2018
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec+0x86) [0x7fb3bb6ce596] vm.c:1561
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_yield+0x25f) [0x7fb3bb6d131f] vm.c:899
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_ary_each+0x3d) [0x7fb3bb51fe1d] array.c:1815
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_call_cfunc+0xf7) [0x7fb3bb6c0d57] vm_insnhelper.c:1668
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec_core+0x11a8) [0x7fb3bb6c9b28] insns.def:945
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec+0x86) [0x7fb3bb6ce596] vm.c:1561
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_yield+0x25f) [0x7fb3bb6d131f] vm.c:899
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_ary_each+0x3d) [0x7fb3bb51fe1d] array.c:1815
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_call_cfunc+0xf7) [0x7fb3bb6c0d57] vm_insnhelper.c:1668
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_call_method+0xe3) [0x7fb3bb6d0743] vm_insnhelper.c:2200
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec_core+0x11a8) [0x7fb3bb6c9b28] insns.def:945
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec+0x86) [0x7fb3bb6ce596] vm.c:1561
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_load_internal0+0x111) [0x7fb3bb578b81] load.c:613
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_require_internal+0x630) [0x7fb3bb57a600] load.c:992
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_require_safe+0x9) [0x7fb3bb57a979] load.c:1037
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_call_cfunc+0xf7) [0x7fb3bb6c0d57] vm_insnhelper.c:1668
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_call_method+0xe3) [0x7fb3bb6d0743] vm_insnhelper.c:2200
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec_core+0x1279) [0x7fb3bb6c9bf9] insns.def:976
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec+0x86) [0x7fb3bb6ce596] vm.c:1561
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_load_internal0+0x111) [0x7fb3bb578b81] load.c:613
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_require_internal+0x630) [0x7fb3bb57a600] load.c:992
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(rb_require_safe+0x9) [0x7fb3bb57a979] load.c:1037
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_call_cfunc+0xf7) [0x7fb3bb6c0d57] vm_insnhelper.c:1668
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_call_method+0xe3) [0x7fb3bb6d0743] vm_insnhelper.c:2200
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec_core+0x1279) [0x7fb3bb6c9bf9] insns.def:976
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(vm_exec+0x86) [0x7fb3bb6ce596] vm.c:1561
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(ruby_exec_internal+0xbf) [0x7fb3bb57329f] eval.c:244
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(ruby_exec_node+0x1d) [0x7fb3bb57519d] eval.c:309
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3(ruby_run_node+0x1e) [0x7fb3bb577b4e] eval.c:301
/home/justin/.rvm/rubies/ruby-2.3.0-preview1/bin/ruby(main+0x4b) [0x40091b] main.c:36

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

* Loaded script: -e

* Loaded features:

    0 enumerator.so
    1 thread.rb
    2 rational.so
    3 complex.so
    4 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
    5 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
    6 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/unicode_normalize.rb
    7 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/rbconfig.rb
    8 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/compatibility.rb
    9 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/defaults.rb
   10 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/deprecate.rb
   11 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/errors.rb
   12 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/version.rb
   13 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/requirement.rb
   14 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/platform.rb
   15 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/basic_specification.rb
   16 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/stub_specification.rb
   17 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/util/list.rb
   18 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/stringio.so
   19 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/specification.rb
   20 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/exceptions.rb
   21 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_gem.rb
   22 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/monitor.rb
   23 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb
   24 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems.rb
   25 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/path_support.rb
   26 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/rubygems/dependency.rb
   27 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/racc/cparse.so
   28 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/racc/parser.rb
   29 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/strscan.so
   30 /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby_lexer.rex.rb
   31 /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby_lexer.rb
   32 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/euc_jp.so
   33 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/windows_31j.so
   34 /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/sexp_processor-4.6.0/lib/sexp.rb
   35 /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/timeout.rb
   36 /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby_parser_extras.rb
   37 /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby18_parser.rb
   38 /home/justin/.rvm/gems/ruby-2.3.0-preview1@test/gems/ruby_parser-3.7.2/lib/ruby19_parser.rb

* Process memory map:

00400000-00401000 r-xp 00000000 08:26 6248575                            /home/justin/.rvm/rubies/ruby-2.3.0-preview1/bin/ruby
00600000-00601000 r--p 00000000 08:26 6248575                            /home/justin/.rvm/rubies/ruby-2.3.0-preview1/bin/ruby
00601000-00602000 rw-p 00001000 08:26 6248575                            /home/justin/.rvm/rubies/ruby-2.3.0-preview1/bin/ruby
02349000-02e91000 rw-p 00000000 00:00 0                                  [heap]
7fb3b2890000-7fb3b2a82000 r--s 00000000 08:21 9359                       /usr/lib64/libc-2.20.so
7fb3b2a88000-7fb3b2aaa000 r--s 00000000 08:21 14236                      /usr/lib64/libpthread-2.20.so
7fb3b2ab0000-7fb3b381b000 r--s 00000000 08:26 6248576                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3.0
7fb3b3820000-7fb3b3836000 r-xp 00000000 08:21 4555                       /usr/lib64/libgcc_s-4.9.2.so.1
7fb3b3836000-7fb3b3a35000 ---p 00016000 08:21 4555                       /usr/lib64/libgcc_s-4.9.2.so.1
7fb3b3a35000-7fb3b3a36000 r--p 00015000 08:21 4555                       /usr/lib64/libgcc_s-4.9.2.so.1
7fb3b3a36000-7fb3b3a37000 rw-p 00016000 08:21 4555                       /usr/lib64/libgcc_s-4.9.2.so.1
7fb3b3a40000-7fb3b3a64000 r--s 00000000 08:26 6248575                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/bin/ruby
7fb3b3a65000-7fb3b3a98000 rw-p 00000000 00:00 0 
7fb3b3a98000-7fb3b3a9b000 r-xp 00000000 08:26 6249304                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/windows_31j.so
7fb3b3a9b000-7fb3b3c9a000 ---p 00003000 08:26 6249304                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/windows_31j.so
7fb3b3c9a000-7fb3b3c9b000 r--p 00002000 08:26 6249304                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/windows_31j.so
7fb3b3c9b000-7fb3b3c9c000 rw-p 00003000 08:26 6249304                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/windows_31j.so
7fb3b3ca0000-7fb3b3ca3000 r-xp 00000000 08:26 6249270                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/euc_jp.so
7fb3b3ca3000-7fb3b3ea2000 ---p 00003000 08:26 6249270                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/euc_jp.so
7fb3b3ea2000-7fb3b3ea3000 r--p 00002000 08:26 6249270                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/euc_jp.so
7fb3b3ea3000-7fb3b3ea4000 rw-p 00003000 08:26 6249270                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/euc_jp.so
7fb3b3ea8000-7fb3b3eae000 r-xp 00000000 08:26 6249320                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/strscan.so
7fb3b3eae000-7fb3b40ae000 ---p 00006000 08:26 6249320                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/strscan.so
7fb3b40ae000-7fb3b40af000 r--p 00006000 08:26 6249320                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/strscan.so
7fb3b40af000-7fb3b40b0000 rw-p 00007000 08:26 6249320                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/strscan.so
7fb3b40b0000-7fb3b40b4000 r-xp 00000000 08:26 6249262                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/racc/cparse.so
7fb3b40b4000-7fb3b42b3000 ---p 00004000 08:26 6249262                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/racc/cparse.so
7fb3b42b3000-7fb3b42b4000 r--p 00003000 08:26 6249262                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/racc/cparse.so
7fb3b42b8000-7fb3b42bf000 r-xp 00000000 08:26 6249319                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fb3b42bf000-7fb3b44bf000 ---p 00007000 08:26 6249319                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fb3b44bf000-7fb3b44c0000 r--p 00007000 08:26 6249319                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fb3b44c0000-7fb3b44c1000 rw-p 00008000 08:26 6249319                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fb3b44c8000-7fb3b44cb000 r-xp 00000000 08:26 6249299                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fb3b44cb000-7fb3b46ca000 ---p 00003000 08:26 6249299                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fb3b46ca000-7fb3b46cb000 r--p 00002000 08:26 6249299                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fb3b46cb000-7fb3b46cc000 rw-p 00003000 08:26 6249299                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fb3b46d0000-7fb3b46d2000 r-xp 00000000 08:26 6249275                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fb3b46d2000-7fb3b48d1000 ---p 00002000 08:26 6249275                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fb3b48d1000-7fb3b48d2000 r--p 00001000 08:26 6249275                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fb3b48d2000-7fb3b48d3000 rw-p 00002000 08:26 6249275                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fb3b48d8000-7fb3ba7b8000 r--p 00000000 08:21 658526                     /usr/share/locale/locale-archive
7fb3ba7b8000-7fb3ba962000 r-xp 00000000 08:21 9359                       /usr/lib64/libc-2.20.so
7fb3ba962000-7fb3bab61000 ---p 001aa000 08:21 9359                       /usr/lib64/libc-2.20.so
7fb3bab61000-7fb3bab65000 r--p 001a9000 08:21 9359                       /usr/lib64/libc-2.20.so
7fb3bab65000-7fb3bab67000 rw-p 001ad000 08:21 9359                       /usr/lib64/libc-2.20.so
7fb3bab67000-7fb3bab6b000 rw-p 00000000 00:00 0 
7fb3bab70000-7fb3bac75000 r-xp 00000000 08:21 13988                      /usr/lib64/libm-2.20.so
7fb3bac75000-7fb3bae74000 ---p 00105000 08:21 13988                      /usr/lib64/libm-2.20.so
7fb3bae74000-7fb3bae75000 r--p 00104000 08:21 13988                      /usr/lib64/libm-2.20.so
7fb3bae75000-7fb3bae76000 rw-p 00105000 08:21 13988                      /usr/lib64/libm-2.20.so
7fb3bae78000-7fb3bae86000 r-xp 00000000 08:21 13475                      /usr/lib64/libcrypt-2.20.so
7fb3bae86000-7fb3bb085000 ---p 0000e000 08:21 13475                      /usr/lib64/libcrypt-2.20.so
7fb3bb085000-7fb3bb086000 r--p 0000d000 08:21 13475                      /usr/lib64/libcrypt-2.20.so
7fb3bb086000-7fb3bb087000 rw-p 0000e000 08:21 13475                      /usr/lib64/libcrypt-2.20.so
7fb3bb087000-7fb3bb0c6000 rw-p 00000000 00:00 0 
7fb3bb0c8000-7fb3bb0cb000 r-xp 00000000 08:21 13967                      /usr/lib64/libdl-2.20.so
7fb3bb0cb000-7fb3bb2ca000 ---p 00003000 08:21 13967                      /usr/lib64/libdl-2.20.so
7fb3bb2ca000-7fb3bb2cb000 r--p 00002000 08:21 13967                      /usr/lib64/libdl-2.20.so
7fb3bb2cb000-7fb3bb2cc000 rw-p 00003000 08:21 13967                      /usr/lib64/libdl-2.20.so
7fb3bb2d0000-7fb3bb2e7000 r-xp 00000000 08:21 14236                      /usr/lib64/libpthread-2.20.so
7fb3bb2e7000-7fb3bb4e6000 ---p 00017000 08:21 14236                      /usr/lib64/libpthread-2.20.so
7fb3bb4e6000-7fb3bb4e7000 r--p 00016000 08:21 14236                      /usr/lib64/libpthread-2.20.so
7fb3bb4e7000-7fb3bb4e8000 rw-p 00017000 08:21 14236                      /usr/lib64/libpthread-2.20.so
7fb3bb4e8000-7fb3bb4ec000 rw-p 00000000 00:00 0 
7fb3bb4f0000-7fb3bb7ba000 r-xp 00000000 08:26 6248576                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3.0
7fb3bb7ba000-7fb3bb9b9000 ---p 002ca000 08:26 6248576                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3.0
7fb3bb9b9000-7fb3bb9bf000 r--p 002c9000 08:26 6248576                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3.0
7fb3bb9bf000-7fb3bb9c2000 rw-p 002cf000 08:26 6248576                    /home/justin/.rvm/rubies/ruby-2.3.0-preview1/lib/libruby.so.2.3.0
7fb3bb9c2000-7fb3bb9d3000 rw-p 00000000 00:00 0 
7fb3bb9d8000-7fb3bb9f8000 r-xp 00000000 08:21 4524                       /usr/lib64/ld-2.20.so
7fb3bba0e000-7fb3bbbd0000 rw-p 00000000 00:00 0 
7fb3bbbf2000-7fb3bbbf3000 rw-p 00000000 00:00 0 
7fb3bbbf3000-7fb3bbbf4000 ---p 00000000 00:00 0 
7fb3bbbf4000-7fb3bbbf7000 rw-p 00000000 00:00 0                          [stack:20154]
7fb3bbbf7000-7fb3bbbf8000 r--p 0001f000 08:21 4524                       /usr/lib64/ld-2.20.so
7fb3bbbf8000-7fb3bbbfa000 rw-p 00020000 08:21 4524                       /usr/lib64/ld-2.20.so
7fb3bbbfa000-7fb3bbbff000 rw-p 00000000 00:00 0 
7ffc38069000-7ffc38868000 rw-p 00000000 00:00 0 
7ffc38970000-7ffc38972000 r--p 00000000 00:00 0                          [vvar]
7ffc38972000-7ffc38974000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]

I don't think this is specific to ruby_parser, it just happens to manipulate large string literals.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0