Skip to content

Instantly share code, notes, and snippets.

@alloy
Created June 24, 2011 13:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save alloy/1044729 to your computer and use it in GitHub Desktop.
Save alloy/1044729 to your computer and use it in GitHub Desktop.
Kernel#require (path resolution)
- loads an absolute path
- loads a non-canonical absolute path
- loads a file defining many methods
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x000000010fa81000
0x00007fff85133420 in libunwind::LocalAddressSpace::getEncodedP ()
(gdb) thread apply all bt
Thread 8 (process 29207):
#0 0x00007fff85017f4a in __workq_kernreturn ()
#1 0x00007fff8501835c in _pthread_wqthread ()
#2 0x00007fff85017fc5 in start_wqthread ()
Thread 7 (process 29207):
#0 0x00007fff85017f4a in __workq_kernreturn ()
#1 0x00007fff8501835c in _pthread_wqthread ()
#2 0x00007fff85017fc5 in start_wqthread ()
Thread 1 (process 29207):
#0 0x00007fff85133420 in libunwind::LocalAddressSpace::getEncodedP ()
#1 0x00007fff851389fc in libunwind::CFI_Parser<libunwind::LocalAddressSpace>::decodeFDE ()
#2 0x00007fff8513369f in _unw_add_dynamic_fde ()
#3 0x00000001004e6c50 in (anonymous namespace)::JITEmitter::finishFunction ()
#4 0x00000001001e7811 in (anonymous namespace)::Emitter<llvm::JITCodeEmitter>::runOnMachineFunction ()
#5 0x0000000100583b93 in llvm::MachineFunctionPass::runOnFunction ()
#6 0x00000001009d8340 in llvm::FPPassManager::runOnFunction ()
#7 0x00000001009d85c2 in llvm::FunctionPassManagerImpl::run ()
#8 0x00000001009d899c in llvm::FunctionPassManager::run ()
#9 0x00000001004d5730 in llvm::JIT::runJITOnFunctionUnlocked ()
#10 0x00000001004d5c8f in llvm::JIT::getPointerToFunction ()
#11 0x0000000100144441 in RoxorCore::compile (this=0x102068200, func=0x1137f40f0, run_optimize=<value temporarily unavailable, due to optimizations>) at vm.cpp:595
#12 0x00000001001523d4 in prepare_method (klass=0x7fff710c7468, dynamic_class=<value temporarily unavailable, due to optimizations>, sel=0x118b8bc60, data=0x1137f40f0, arity=@0x7fff5fbeaf68, flags=3, precompiled=false, objc_imp_types=0x0) at vm.cpp:2196
#13 0x0000000100152750 in rb_vm_prepare_method (klass=<value temporarily unavailable, due to optimizations>, dynamic_class=<value temporarily unavailable, due to optimizations>, sel=<value temporarily unavailable, due to optimizations>, func=<value temporarily unavailable, due to optimizations>, arity=<value temporarily unavailable, due to optimizations>, flags=<value temporarily unavailable, due to optimizations>) at vm.cpp:2276
#14 0x00000001182fe7df in ?? ()
#15 0x0000000100157c36 in rb_vm_run (fname=0x20180f480 "/Users/eloy/code/MacRuby/MacRuby/spec/frozen/fixtures/code/methods_fixture.rb", node=0x2018f7e20, binding=<value temporarily unavailable, due to optimizations>, inside_eval=<value temporarily unavailable, due to optimizations>) at vm.cpp:4113
#16 0x0000000100157eed in RoxorVM::set_current_outer () at /Users/eloy/code/MacRuby/MacRuby/vm.h:5630
#17 0x0000000100157eed in ~Finally [inlined] () at /Users/eloy/code/MacRuby/MacRuby/vm.cpp:5620
#18 0x0000000100157eed in rb_vm_load (fname_str=0x20180f480 "/Users/eloy/code/MacRuby/MacRuby/spec/frozen/fixtures/code/methods_fixture.rb", wrap=<value temporarily unavailable, due to optimizations>) at vm.cpp:5630
#19 0x00000001000395bb in load_try (path=<value temporarily unavailable, due to optimizations>) at load.c:246
#20 0x000000010015474a in rb_rescue2 (b_proc=<value temporarily unavailable, due to optimizations>, data1=<value temporarily unavailable, due to optimizations>, r_proc=0x100039510 <load_rescue>, data2=8616044512) at vm.cpp:3646
#21 0x0000000100039d57 in rb_require_safe (fname=<value temporarily unavailable, due to optimizations>, safe=<value temporarily unavailable, due to optimizations>) at load.c:292
#22 0x000000010013f0d9 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101235478, top=8615851040, self=8615851040, klass=0x200528940, sel=0x10101fe10, block=0x0, opt=4 '\004', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbec328) at dispatcher.cpp:161
#23 0x00000001017004e4 in ?? ()
#24 0x000000010b142055 in ?? ()
#25 0x000000010013f0d9 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101235440, top=0, self=8615851040, klass=0x200528940, sel=0x10101fe10, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbeda60) at dispatcher.cpp:161
#26 0x00000001000f6791 in rb_vm_call0 [inlined] () at /Users/eloy/code/MacRuby/MacRuby/vm.h:653
#27 0x00000001000f6791 in rb_vm_call2 [inlined] () at /Users/eloy/code/MacRuby/MacRuby/vm.h:679
#28 0x00000001000f6791 in rb_call [inlined] () at /Users/eloy/code/MacRuby/MacRuby/vm_eval.c:32
#29 0x00000001000f6791 in send_internal [inlined] () at /Users/eloy/code/MacRuby/MacRuby/vm_eval.c:129
#30 0x00000001000f6791 in rb_f_send (recv=8615851040, sel=<value temporarily unavailable, due to optimizations>, argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbeda58) at vm.h:155
#31 0x000000010013eb94 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x10120f500, top=8615819360, self=8615851040, klass=0x200528940, sel=0x7fff8730f548, block=0x0, opt=0 '\0', argc=2, argv=0x7fff5fbeda58) at dispatcher.cpp:448
#32 0x00000001017004e4 in ?? ()
#33 0x000000011828aed2 in ?? ()
#34 0x000000010013f8dd in rb_vm_yield_under (klass=<value temporarily unavailable, due to optimizations>, self=<value temporarily unavailable, due to optimizations>, argc=<value temporarily unavailable, due to optimizations>, argv=0x200528940) at dispatcher.cpp:98
#35 0x00000001000f594f in specific_eval (argc=<value temporarily unavailable, due to optimizations>, argv=0x0, klass=8615819968, self=8615819360) at vm_eval.c:339
#36 0x000000010013eb40 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x1012207c0, top=8590644096, self=8615819360, klass=0x2018afac0, sel=0x1010de610, block=0x2017ad220, opt=0 '\0', argc=0, argv=0x0) at dispatcher.cpp:457
#37 0x00000001017004e4 in ?? ()
#38 0x000000010176c7e5 in ?? ()
#39 0x000000010013f0d9 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x1012292e0, top=8616475744, self=8590644096, klass=0x2000adea0, sel=0x104912010, block=0x2017ad220, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbef9d8) at dispatcher.cpp:161
#40 0x00000001017004e4 in ?? ()
#41 0x000000010176e33f in ?? ()
#42 0x0000000100141427 in rb_vm_yield_args (_vm=0x10101cb70, argc=<value temporarily unavailable, due to optimizations>, argv=0x2000adea0) at dispatcher.cpp:100
#43 0x0000000100028fc6 in enum_all_func [inlined] () at /Users/eloy/code/MacRuby/MacRuby/enum.c:868
#44 0x0000000100028fc6 in all_iter_i (i=<value temporarily unavailable, due to optimizations>, memo=0x7fff5fbf0be8, argc=<value temporarily unavailable, due to optimizations>, argv=<value temporarily unavailable, due to optimizations>) at enum.c:868
#45 0x00000001001414c5 in rb_vm_yield_args (_vm=0x10101cb70, argc=1, argv=0x7fff5fbf0238) at dispatcher.cpp:1122
#46 0x00000001000f4358 in rb_yield (val=8614951680) at vm_eval.c:183
#47 0x000000010000578d in rary_each (ary=8616298144, sel=<value temporarily unavailable, due to optimizations>) at array.c:1095
#48 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101229c80, top=0, self=8616298144, klass=0x200067a00, sel=0x1010324b0, block=0x20194f9a0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#49 0x00000001000f3f3f in rb_objc_block_call (obj=8616298144, sel=0x1010324b0, argc=0, argv=0x0, bl_proc=<value temporarily unavailable, due to optimizations>, data2=<value temporarily unavailable, due to optimizations>) at vm.h:653
#50 0x0000000100027e37 in enum_all (obj=8616298144, sel=<value temporarily unavailable, due to optimizations>) at enum.c:892
#51 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x10120fc00, top=8616475744, self=8616298144, klass=0x200067a00, sel=0x1010c6bc0, block=0x2018c39a0, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#52 0x00000001017004e4 in ?? ()
#53 0x000000010176df55 in ?? ()
#54 0x000000010013f089 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101237d60, top=8616475744, self=8616475744, klass=0x2000fff20, sel=0x104912010, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbf1b30) at dispatcher.cpp:165
#55 0x00000001017004e4 in ?? ()
#56 0x0000000101774f82 in ?? ()
#57 0x0000000100141427 in rb_vm_yield_args (_vm=0x10101cb70, argc=<value temporarily unavailable, due to optimizations>, argv=0x2000fff20) at dispatcher.cpp:100
#58 0x00000001000f4358 in rb_yield (val=8616526464) at vm_eval.c:183
#59 0x000000010000578d in rary_each (ary=8616628960, sel=<value temporarily unavailable, due to optimizations>) at array.c:1095
#60 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101229c80, top=8616475744, self=8616628960, klass=0x200067a00, sel=0x1010324b0, block=0x20030f080, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#61 0x00000001017004e4 in ?? ()
#62 0x000000010176ed2d in ?? ()
#63 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x1012379e0, top=8615683008, self=8616475744, klass=0x2000fff20, sel=0x101652000, block=0x0, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#64 0x00000001017004e4 in ?? ()
#65 0x0000000101770191 in ?? ()
#66 0x0000000100141427 in rb_vm_yield_args (_vm=0x10101cb70, argc=<value temporarily unavailable, due to optimizations>, argv=0x2000fff20) at dispatcher.cpp:100
#67 0x00000001000f4358 in rb_yield (val=8616475744) at vm_eval.c:183
#68 0x000000010000578d in rary_each (ary=8617039232, sel=<value temporarily unavailable, due to optimizations>) at array.c:1095
#69 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101229c80, top=8615683008, self=8617039232, klass=0x200067a00, sel=0x1010324b0, block=0x2018a4ba0, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#70 0x00000001017004e4 in ?? ()
#71 0x000000010176efbb in ?? ()
#72 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x1012379e0, top=8590644096, self=8615683008, klass=0x2000fff20, sel=0x101652000, block=0x0, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#73 0x00000001017004e4 in ?? ()
#74 0x000000010172e5e4 in ?? ()
#75 0x000000010013f0b4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x10120a560, top=8590065088, self=8590644096, klass=0x2000adea0, sel=0x104909920, block=0x20188e540, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbf72d8) at dispatcher.cpp:163
#76 0x00000001017004e4 in ?? ()
#77 0x000000010172e82e in ?? ()
#78 0x000000010013f089 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x10121b580, top=8590065088, self=8590065088, klass=0x20001f780, sel=0x104909920, block=0x20188e540, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbf7480) at dispatcher.cpp:165
#79 0x00000001017004e4 in ?? ()
#80 0x00000001182fdc89 in ?? ()
#81 0x0000000100157c36 in rb_vm_run (fname=0x2018872c0 "/Users/eloy/code/MacRuby/MacRuby/spec/frozen/core/kernel/require_spec.rb", node=0x20188c5c0, binding=<value temporarily unavailable, due to optimizations>, inside_eval=<value temporarily unavailable, due to optimizations>) at vm.cpp:4113
#82 0x0000000100157eed in RoxorVM::set_current_outer () at /Users/eloy/code/MacRuby/MacRuby/vm.h:5630
#83 0x0000000100157eed in ~Finally [inlined] () at /Users/eloy/code/MacRuby/MacRuby/vm.cpp:5620
#84 0x0000000100157eed in rb_vm_load (fname_str=0x2018872c0 "/Users/eloy/code/MacRuby/MacRuby/spec/frozen/core/kernel/require_spec.rb", wrap=<value temporarily unavailable, due to optimizations>) at vm.cpp:5630
#85 0x000000010003960a in rb_f_load (rcv=<value temporarily unavailable, due to optimizations>, sel=<value temporarily unavailable, due to optimizations>, argc=<value temporarily unavailable, due to optimizations>, argv=<value temporarily unavailable, due to optimizations>) at load.c:115
#86 0x000000010013eb94 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x1012264b8, top=8615819360, self=8590035520, klass=0x200018a00, sel=0x7fff85abfbb1, block=0x0, opt=0 '\0', argc=1, argv=0x7fff5fbf8eb8) at dispatcher.cpp:448
#87 0x00000001017004e4 in ?? ()
#88 0x000000010176c6d5 in ?? ()
#89 0x000000010013f8dd in rb_vm_yield_under (klass=<value temporarily unavailable, due to optimizations>, self=<value temporarily unavailable, due to optimizations>, argc=<value temporarily unavailable, due to optimizations>, argv=0x200018a00) at dispatcher.cpp:98
#90 0x00000001000f594f in specific_eval (argc=<value temporarily unavailable, due to optimizations>, argv=0x0, klass=8615819968, self=8615819360) at vm_eval.c:339
#91 0x000000010013eb40 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x1012207c0, top=8590644096, self=8615819360, klass=0x2018afac0, sel=0x1010de610, block=0x201897320, opt=0 '\0', argc=0, argv=0x0) at dispatcher.cpp:457
#92 0x00000001017004e4 in ?? ()
#93 0x000000010176c7e5 in ?? ()
#94 0x000000010013f0d9 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x1012292e0, top=8590644096, self=8590644096, klass=0x2000adea0, sel=0x104912010, block=0x201897320, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbfae48) at dispatcher.cpp:161
#95 0x00000001017004e4 in ?? ()
#96 0x000000010176a8e2 in ?? ()
#97 0x0000000100141427 in rb_vm_yield_args (_vm=0x10101cb70, argc=<value temporarily unavailable, due to optimizations>, argv=0x2000adea0) at dispatcher.cpp:100
#98 0x00000001000f4358 in rb_yield (val=8592991360) at vm_eval.c:183
#99 0x000000010000578d in rary_each (ary=8593698848, sel=<value temporarily unavailable, due to optimizations>) at array.c:1095
#100 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101229c80, top=8590644096, self=8593698848, klass=0x200067a00, sel=0x1010324b0, block=0x20037ef20, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#101 0x00000001017004e4 in ?? ()
#102 0x000000010176a2be in ?? ()
#103 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x10122a070, top=8590644096, self=8590644096, klass=0x2000adea0, sel=0x7fff86eb57d6, block=0x0, opt=1 '\001', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#104 0x00000001017004e4 in ?? ()
#105 0x0000000101769907 in ?? ()
#106 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101229660, top=8592533568, self=8590644096, klass=0x2000adea0, sel=0x101652000, block=0x0, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#107 0x00000001017004e4 in ?? ()
#108 0x0000000101769115 in ?? ()
#109 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x101221940, top=8592130912, self=8592533568, klass=0x200218360, sel=0x7fff847f49f4, block=0x0, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#110 0x00000001017004e4 in ?? ()
#111 0x0000000101757391 in ?? ()
#112 0x000000010013f0f4 in rb_vm_dispatch (_vm=0x10101cb70, cache=0x10121c3b8, top=8590065088, self=8592130912, klass=0x200223d00, sel=0x7fff8489dfb1, block=0x0, opt=0 '\0', argc=<value temporarily unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
#113 0x00000001017004e4 in ?? ()
#114 0x00000001017001c4 in ?? ()
#115 0x0000000100157c36 in rb_vm_run (fname=0x200040fa0 "./mspec/bin/mspec-ci", node=0x200058020, binding=<value temporarily unavailable, due to optimizations>, inside_eval=<value temporarily unavailable, due to optimizations>) at vm.cpp:4113
#116 0x0000000100031000 in ruby_run_node (n=0x200058020) at eval.c:211
#117 0x0000000100000cf8 in main (argc=7, argv=0x10101c480, envp=<value temporarily unavailable, due to optimizations>) at main.cpp:40
(gdb)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment