Actions
Bug #13286
closedSegfault when using rb_debug_inspector_open / rb_debug_inspector_frame_binding_get with Fiddle, but not when directly from C extension
ruby -v:
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
Description
System¶
$ uname -a
Linux clients 4.1.5-x86_64-linode61 #7 SMP Mon Aug 24 13:46:31 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux
$ ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
Program¶
When using the following C extension, there are no segfaults¶
$ cat of_caller.c
#include "ruby/ruby.h"
#include "ruby/debug.h"
static VALUE
callback(const rb_debug_inspector_t *dbg_context, void *data)
{
long item = NUM2LONG(*((VALUE *)data));
return rb_debug_inspector_frame_binding_get(dbg_context, item + 1);
}
static VALUE
of_caller(VALUE self, VALUE item)
{
return rb_debug_inspector_open(callback, (void *) &item);
}
void
Init_bindings(VALUE self)
{
VALUE cBinding = rb_define_class("Binding", rb_cObject);
rb_define_singleton_method(cBinding, "of_caller", of_caller, 1);
rb_define_method(cBinding, "of_caller", of_caller, 1);
}
But, when using this Fiddle
version, there are intermittent Ruby crashes¶
$ cat of_caller.rb
require 'fiddle/import'
module Fiddle
module Binding
extend Fiddle::Importer
dlload Fiddle.dlopen(nil)
rb_debug_inspector_open = extern "void* rb_debug_inspector_open(void*, void*)"
rb_debug_inspector_frame_binding_get = extern "void* rb_debug_inspector_frame_binding_get(void*, long)"
callback = bind("void* callback(void*, void*)") {|ctx, n| rb_debug_inspector_frame_binding_get.call(ctx, n+4)}
end
end
class Binding
def self.of_caller(n); ::Fiddle::Binding.rb_debug_inspector_open(::Fiddle::Binding['callback'], n).to_value; end
def of_caller(n); self.class.of_caller(n); end
end
The code used to test the C
and Ruby
versions¶
# below here is just to test it out...
outer = 40
class A
def a
a = 30
B.new.b
end
end
class B
def b
b = 20
C.new.c
end
end
class C
def c
c = 10
puts binding.of_caller(0).eval('local_variables') # c
puts binding.of_caller(1).eval('local_variables') # b
puts binding.of_caller(2).eval('local_variables') # a
puts binding.of_caller(3).eval('local_variables') # outer
puts binding.of_caller(9).eval('local_variables') rescue puts($!)
end
end
50.times { A.new.a }
Results¶
$ ruby ./of_caller.rb
c
b
a
outer
no such frame
c
b
a
outer
no such frame
... there are a total of 47 of these "c,b,a,out,no such" repeats ...
c
b
a
outer
./of_caller.rb:8: [BUG] Segmentation fault at 0x00000000000008
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0011 p:---- s:0052 e:000051 CFUNC :call
c:0010 p:0021 s:0046 E:001110 METHOD ./of_caller.rb:8
c:0009 p:0037 s:0040 E:000b48 METHOD ./of_caller.rb:14
c:0008 p:0013 s:0035 E:000218 METHOD ./of_caller.rb:15
c:0007 p:0102 s:0030 E:000458 METHOD ./of_caller.rb:41
c:0006 p:0023 s:0024 E:000288 METHOD ./of_caller.rb:30
c:0005 p:0023 s:0019 E:0024d8 METHOD ./of_caller.rb:23
c:0004 p:0017 s:0014 E:0016a0 BLOCK ./of_caller.rb:45 [FINISH]
c:0003 p:---- s:0011 e:000010 CFUNC :times
c:0002 p:0073 s:0007 E:002688 EVAL ./of_caller.rb:45 [FINISH]
c:0001 p:0000 s:0003 E:000e20 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
./of_caller.rb:45:in `<main>'
./of_caller.rb:45:in `times'
./of_caller.rb:45:in `block in <main>'
./of_caller.rb:23:in `a'
./of_caller.rb:30:in `b'
./of_caller.rb:41:in `c'
./of_caller.rb:15:in `of_caller'
./of_caller.rb:14:in `of_caller'
./of_caller.rb:8:in `rb_debug_inspector_open'
./of_caller.rb:8:in `call'
-- Machine register context ------------------------------------------------
RIP: 0x00007f3c3764250e RBP: 0x000055fdc2a036f8 RSP: 0x00007ffd8ceb71e0
RAX: 0x0000000000000008 RBX: 0x0000000000000008 RCX: 0x0000000000000000
RDX: 0x000000000000001d RDI: 0x0000000000bc530c RSI: 0x000055fdc2af2bb6
R8: 0x209604bcef02eb42 R9: 0x8a75da5f9c77ef5e R10: 0x00007f3c37645dcb
R11: 0x00007f3c382a8870 R12: 0x000055fdc2a02f30 R13: 0x0000000000000003
R14: 0x00007ffd8ceb72c0 R15: 0x000055fdc2d570f8 EFL: 0x0000000000010206
-- C level backtrace information -------------------------------------------
/opt/rubies/ruby-2.4.0/bin/ruby(rb_vm_bugreport+0x528) [0x55fdc07237e8] vm_dump.c:679
/opt/rubies/ruby-2.4.0/bin/ruby(rb_bug_context+0xd0) [0x55fdc0718980] error.c:426
/opt/rubies/ruby-2.4.0/bin/ruby(sigsegv+0x3e) [0x55fdc0614abe] signal.c:907
/lib/x86_64-linux-gnu/libpthread.so.0 [0x7f3c38c3a340]
/opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so(with_gvl_callback+0x3e) [0x7f3c3764250e] closure.c:73
/opt/rubies/ruby-2.4.0/bin/ruby(rb_thread_call_with_gvl+0x1db) [0x55fdc065120b] thread.c:1495
/opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so(callback+0x54) [0x7f3c37642b44] closure.c:195
/usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_closure_unix64_inner+0x1fb) [0x7f3c3743c8cb]
/usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_closure_unix64+0x46) [0x7f3c3743cc44]
/opt/rubies/ruby-2.4.0/bin/ruby(rb_debug_inspector_open+0x1ea) [0x55fdc06a036a] vm_backtrace.c:1186
/usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call_unix64+0x4c) [0x7f3c3743cadc]
/usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call+0x1fc) [0x7f3c3743c40c]
/opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so(nogvl_ffi_call+0x18) [0x7f3c37643bd8] function.c:160
/opt/rubies/ruby-2.4.0/bin/ruby(rb_thread_call_without_gvl+0x42) [0x55fdc06508e2] thread.c:1294
/opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so(function_call+0x305) [0x7f3c37643a05] function.c:219
/opt/rubies/ruby-2.4.0/bin/ruby(vm_call_cfunc+0xf1) [0x55fdc0685151] vm_insnhelper.c:1752
/opt/rubies/ruby-2.4.0/bin/ruby(vm_exec_core+0x2f90) [0x55fdc068dc70] insns.def:967
/opt/rubies/ruby-2.4.0/bin/ruby(vm_exec+0x87) [0x55fdc0691207] vm.c:1712
/opt/rubies/ruby-2.4.0/bin/ruby(rb_yield_1+0x592) [0x55fdc069af52] vm.c:969
/opt/rubies/ruby-2.4.0/bin/ruby(int_dotimes+0x3e) [0x55fdc057fd9e] numeric.c:4968
/opt/rubies/ruby-2.4.0/bin/ruby(vm_call_cfunc+0xf1) [0x55fdc0685151] vm_insnhelper.c:1752
/opt/rubies/ruby-2.4.0/bin/ruby(vm_call_method+0xe3) [0x55fdc0693263] vm_insnhelper.c:2291
/opt/rubies/ruby-2.4.0/bin/ruby(vm_exec_core+0x2f90) [0x55fdc068dc70] insns.def:967
/opt/rubies/ruby-2.4.0/bin/ruby(vm_exec+0x87) [0x55fdc0691207] vm.c:1712
/opt/rubies/ruby-2.4.0/bin/ruby(ruby_exec_internal+0xad) [0x55fdc05200ad] eval.c:244
/opt/rubies/ruby-2.4.0/bin/ruby(ruby_run_node+0x2d) [0x55fdc052378d] eval.c:308
/opt/rubies/ruby-2.4.0/bin/ruby(main+0x4b) [0x55fdc051fe6b] addr2line.c:177
-- Other runtime information -----------------------------------------------
* Loaded script: ./of_caller.rb
* Loaded features:
0 enumerator.so
1 thread.rb
2 rational.so
3 complex.so
4 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
5 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
6 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/unicode_normalize.rb
7 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/rbconfig.rb
8 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/compatibility.rb
9 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/defaults.rb
10 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/deprecate.rb
11 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/errors.rb
12 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/version.rb
13 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/requirement.rb
14 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/platform.rb
15 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/basic_specification.rb
16 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/stub_specification.rb
17 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/util/list.rb
18 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/stringio.so
19 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/specification.rb
20 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/exceptions.rb
21 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/dependency.rb
22 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_gem.rb
23 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/monitor.rb
24 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb
25 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems.rb
26 /opt/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/path_support.rb
27 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/version.rb
28 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/core_ext/name_error.rb
29 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/levenshtein.rb
30 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/jaro_winkler.rb
31 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checker.rb
32 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/delegate.rb
33 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
34 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
35 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers.rb
36 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/method_name_checker.rb
37 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/null_checker.rb
38 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/formatter.rb
39 /opt/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean.rb
40 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so
41 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle/function.rb
42 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle/closure.rb
43 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle.rb
44 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle/value.rb
45 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle/pack.rb
46 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle/struct.rb
47 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle/cparser.rb
48 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/fiddle/import.rb
* Process memory map:
55fdc04fb000-55fdc07fb000 r-xp 00000000 08:00 4517097 /opt/rubies/ruby-2.4.0/bin/ruby
55fdc09fb000-55fdc0a00000 r--p 00300000 08:00 4517097 /opt/rubies/ruby-2.4.0/bin/ruby
55fdc0a00000-55fdc0a01000 rw-p 00305000 08:00 4517097 /opt/rubies/ruby-2.4.0/bin/ruby
55fdc0a01000-55fdc0a13000 rw-p 00000000 00:00 0
55fdc2a02000-55fdc2e5c000 rw-p 00000000 00:00 0 [heap]
7f3c36111000-7f3c362d3000 r--s 00000000 08:00 18047 /lib/x86_64-linux-gnu/libc-2.19.so
7f3c362d3000-7f3c37221000 r--s 00000000 08:00 4517097 /opt/rubies/ruby-2.4.0/bin/ruby
7f3c37221000-7f3c37237000 r-xp 00000000 08:00 20410 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f3c37237000-7f3c37436000 ---p 00016000 08:00 20410 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f3c37436000-7f3c37437000 rw-p 00015000 08:00 20410 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f3c37437000-7f3c3743e000 r-xp 00000000 08:00 6866 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.1
7f3c3743e000-7f3c3763d000 ---p 00007000 08:00 6866 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.1
7f3c3763d000-7f3c3763e000 r--p 00006000 08:00 6866 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.1
7f3c3763e000-7f3c3763f000 rw-p 00007000 08:00 6866 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.1
7f3c3763f000-7f3c37648000 r-xp 00000000 08:00 4524620 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so
7f3c37648000-7f3c37847000 ---p 00009000 08:00 4524620 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so
7f3c37847000-7f3c37848000 r--p 00008000 08:00 4524620 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so
7f3c37848000-7f3c37849000 rw-p 00009000 08:00 4524620 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so
7f3c37849000-7f3c37851000 r-xp 00000000 08:00 4524618 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/stringio.so
7f3c37851000-7f3c37a50000 ---p 00008000 08:00 4524618 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/stringio.so
7f3c37a50000-7f3c37a51000 r--p 00007000 08:00 4524618 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/stringio.so
7f3c37a51000-7f3c37a52000 rw-p 00008000 08:00 4524618 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/stringio.so
7f3c37a52000-7f3c37a54000 r-xp 00000000 08:00 4524562 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7f3c37a54000-7f3c37c54000 ---p 00002000 08:00 4524562 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7f3c37c54000-7f3c37c55000 r--p 00002000 08:00 4524562 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7f3c37c55000-7f3c37c56000 rw-p 00003000 08:00 4524562 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7f3c37c56000-7f3c37c58000 r-xp 00000000 08:00 4524572 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7f3c37c58000-7f3c37e57000 ---p 00002000 08:00 4524572 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7f3c37e57000-7f3c37e58000 r--p 00001000 08:00 4524572 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7f3c37e58000-7f3c37e59000 rw-p 00002000 08:00 4524572 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7f3c37e59000-7f3c38122000 r--p 00000000 08:00 949 /usr/lib/locale/locale-archive
7f3c38122000-7f3c382dd000 r-xp 00000000 08:00 18047 /lib/x86_64-linux-gnu/libc-2.19.so
7f3c382dd000-7f3c384dc000 ---p 001bb000 08:00 18047 /lib/x86_64-linux-gnu/libc-2.19.so
7f3c384dc000-7f3c384e0000 r--p 001ba000 08:00 18047 /lib/x86_64-linux-gnu/libc-2.19.so
7f3c384e0000-7f3c384e2000 rw-p 001be000 08:00 18047 /lib/x86_64-linux-gnu/libc-2.19.so
7f3c384e2000-7f3c384e7000 rw-p 00000000 00:00 0
7f3c384e7000-7f3c385ec000 r-xp 00000000 08:00 16793 /lib/x86_64-linux-gnu/libm-2.19.so
7f3c385ec000-7f3c387eb000 ---p 00105000 08:00 16793 /lib/x86_64-linux-gnu/libm-2.19.so
7f3c387eb000-7f3c387ec000 r--p 00104000 08:00 16793 /lib/x86_64-linux-gnu/libm-2.19.so
7f3c387ec000-7f3c387ed000 rw-p 00105000 08:00 16793 /lib/x86_64-linux-gnu/libm-2.19.so
7f3c387ed000-7f3c387f6000 r-xp 00000000 08:00 17782 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f3c387f6000-7f3c389f6000 ---p 00009000 08:00 17782 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f3c389f6000-7f3c389f7000 r--p 00009000 08:00 17782 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f3c389f7000-7f3c389f8000 rw-p 0000a000 08:00 17782 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f3c389f8000-7f3c38a26000 rw-p 00000000 00:00 0
7f3c38a26000-7f3c38a29000 r-xp 00000000 08:00 17270 /lib/x86_64-linux-gnu/libdl-2.19.so
7f3c38a29000-7f3c38c28000 ---p 00003000 08:00 17270 /lib/x86_64-linux-gnu/libdl-2.19.so
7f3c38c28000-7f3c38c29000 r--p 00002000 08:00 17270 /lib/x86_64-linux-gnu/libdl-2.19.so
7f3c38c29000-7f3c38c2a000 rw-p 00003000 08:00 17270 /lib/x86_64-linux-gnu/libdl-2.19.so
7f3c38c2a000-7f3c38c43000 r-xp 00000000 08:00 18048 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f3c38c43000-7f3c38e42000 ---p 00019000 08:00 18048 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f3c38e42000-7f3c38e43000 r--p 00018000 08:00 18048 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f3c38e43000-7f3c38e44000 rw-p 00019000 08:00 18048 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f3c38e44000-7f3c38e48000 rw-p 00000000 00:00 0
7f3c38e48000-7f3c38e6b000 r-xp 00000000 08:00 17951 /lib/x86_64-linux-gnu/ld-2.19.so
7f3c38ea7000-7f3c38eaf000 r--s 00000000 08:00 6866 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.1
7f3c38eaf000-7f3c38f01000 r--s 00000000 08:00 4524620 /opt/rubies/ruby-2.4.0/lib/ruby/2.4.0/x86_64-linux/fiddle.so
7f3c38f01000-7f3c38f24000 r--s 00000000 08:00 18048 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f3c38f24000-7f3c38f55000 rw-p 00000000 00:00 0
7f3c38f55000-7f3c38f5c000 r--s 00000000 08:00 21069997 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
7f3c38f5c000-7f3c39061000 rw-p 00000000 00:00 0
7f3c39062000-7f3c39063000 rw-p 00000000 00:00 0
7f3c39063000-7f3c39064000 r-xp 00000000 00:00 0
7f3c39064000-7f3c39065000 ---p 00000000 00:00 0
7f3c39065000-7f3c3906a000 rw-p 00000000 00:00 0 [stack:30831]
7f3c3906a000-7f3c3906b000 r--p 00022000 08:00 17951 /lib/x86_64-linux-gnu/ld-2.19.so
7f3c3906b000-7f3c3906c000 rw-p 00023000 08:00 17951 /lib/x86_64-linux-gnu/ld-2.19.so
7f3c3906c000-7f3c3906d000 rw-p 00000000 00:00 0
7ffd8c6bb000-7ffd8ceba000 rw-p 00000000 00:00 0
7ffd8ceea000-7ffd8ceec000 r--p 00000000 00:00 0 [vvar]
7ffd8ceec000-7ffd8ceee000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
[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
Aborted
Updated by shyouhei (Shyouhei Urabe) over 7 years ago
- Status changed from Open to Assigned
- Assignee set to tenderlovemaking (Aaron Patterson)
Updated by shreeve (Steve Shreeve) over 7 years ago
Here's a link to a c-library extension that has been working great for us:
Updated by tenderlovemaking (Aaron Patterson) almost 6 years ago
- Status changed from Assigned to Closed
Actions
Like0
Like0Like0Like0