Skip to content

Instantly share code, notes, and snippets.

@tak1n
Created June 9, 2016 10:37
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 tak1n/75a5d8e2468f196a2b17793e11325256 to your computer and use it in GitHub Desktop.
Save tak1n/75a5d8e2468f196a2b17793e11325256 to your computer and use it in GitHub Desktop.
benny@benny-Lenovo-Y50-70:~$ sudo lldb -p 14996 [67/67]
[sudo] password for benny:
(lldb) process attach --pid 14996
Process 14996 stopped
* thread #1: tid = 14996, 0x00007f8d70b243a0 libpthread.so.0`__pthread_cond_wait + 192, name = 'rbx', stop reason = signal SIGSTOP
frame #0: 0x00007f8d70b243a0 libpthread.so.0`__pthread_cond_wait + 192
libpthread.so.0`__pthread_cond_wait:
-> 0x7f8d70b243a0 <+192>: movl (%rsp), %edi
0x7f8d70b243a3 <+195>: callq 0x7f8d70b27200 ; __pthread_disable_asynccancel
0x7f8d70b243a8 <+200>: movq 0x8(%rsp), %rdi
0x7f8d70b243ad <+205>: movl $0x1, %esi
thread #2: tid = 15001, 0x00007f8d70b243a0 libpthread.so.0`__pthread_cond_wait + 192, name = 'rbx', stop reason = signal SIGSTOP
frame #0: 0x00007f8d70b243a0 libpthread.so.0`__pthread_cond_wait + 192
libpthread.so.0`__pthread_cond_wait:
-> 0x7f8d70b243a0 <+192>: movl (%rsp), %edi
0x7f8d70b243a3 <+195>: callq 0x7f8d70b27200 ; __pthread_disable_asynccancel
0x7f8d70b243a8 <+200>: movq 0x8(%rsp), %rdi
0x7f8d70b243ad <+205>: movl $0x1, %esi
thread #3: tid = 15002, 0x00007f8d6fe3e8dd libc.so.6`__GI_nanosleep + 45 at syscall-template.S:84, name = 'rbx', stop reason = signal SIGSTOP
frame #0: 0x00007f8d6fe3e8dd libc.so.6`__GI_nanosleep + 45 at syscall-template.S:84
thread #4: tid = 15003, 0x00007f8d70b2755d libpthread.so.0`__libc_read + 45, name = 'rbx', stop reason = signal SIGSTOP
frame #0: 0x00007f8d70b2755d libpthread.so.0`__libc_read + 45
libpthread.so.0`__libc_read:
-> 0x7f8d70b2755d <+45>: movq (%rsp), %rdi
0x7f8d70b27561 <+49>: movq %rax, %rdx
0x7f8d70b27564 <+52>: callq 0x7f8d70b27200 ; __pthread_disable_asynccancel
0x7f8d70b27569 <+57>: movq %rdx, %rax
thread #5: tid = 15004, 0x00007f8d70b243a0 libpthread.so.0`__pthread_cond_wait + 192, name = 'rbx', stop reason = signal SIGSTOP
frame #0: 0x00007f8d70b243a0 libpthread.so.0`__pthread_cond_wait + 192
libpthread.so.0`__pthread_cond_wait:
-> 0x7f8d70b243a0 <+192>: movl (%rsp), %edi
0x7f8d70b243a3 <+195>: callq 0x7f8d70b27200 ; __pthread_disable_asynccancel
0x7f8d70b243a8 <+200>: movq 0x8(%rsp), %rdi
0x7f8d70b243ad <+205>: movl $0x1, %esi
Executable module set to "/home/benny/.rubies/rbx/bin/rbx".
Architecture set to: x86_64-pc-linux.
(lldb) br set -n RubyException::raise
Breakpoint 1: where = rbx`rubinius::RubyException::raise(rubinius::Exception*, bool) + 16 at exception.cpp:39, address = 0x000000000049dd20
(lldb) run
There is a running process, detach from it and restart?: [Y/n] y
Process 14996 detached
Process 15339 launched: '/home/benny/.rubies/rbx/bin/rbx' (x86_64)
Process 15339 stopped and restarted: thread 2 received signal: SIGCHLD
Process 15339 stopped and restarted: thread 2 received signal: SIGCHLD
Process 15339 stopped and restarted: thread 2 received signal: SIGCHLD
Process 15339 stopped and restarted: thread 2 received signal: SIGCHLD
Process 15339 stopped and restarted: thread 2 received signal: SIGCHLD
Process 15339 stopped and restarted: thread 2 received signal: SIGCHLD
rbx was compiled with optimization - stepping may behave oddly; variables may not be available.
Process 15339 stopped
* thread #2: tid = 15343, 0x000000000049dd20 rbx`rubinius::RubyException::raise(exception=0x00007ffff551bfd8, make_backtrace=false) + 16 at exception.cpp:39, name = 'rbx', stop reason = breakpoint 1.1
frame #0: 0x000000000049dd20 rbx`rubinius::RubyException::raise(exception=0x00007ffff551bfd8, make_backtrace=false) + 16 at exception.cpp:39 [opt]
36 }
37
38 void RubyException::raise(Exception* exception, bool make_backtrace) {
-> 39 throw RubyException(exception, make_backtrace);
40 // Not reached.
41 }
42
(lldb) up
frame #1: 0x0000000000573975 rbx`rubinius::Exception::raise_errno_error(state=0x00007fffefffee88, reason="\x90�\x19", ern=<unavailable>, entity="�\x7f") + 853 at exception.cpp:338 [opt]
335 exc = make_errno_exception(state, exc_class, message, cNil);
336 }
337
-> 338 RubyException::raise(exc);
339 }
340
341 void Exception::raise_errno_wait_readable(STATE, int error) {
(lldb) p __printbt__()
0x7fffeffedf70: IO.sysopen in core/io.rb:1109 (+64)
0x7fffeffee580: File#initialize in core/file.rb:1188 (+421)
0x7fffeffeecd0: Class#new in core/alpha.rb:93 (+16)
0x7fffeffef2d0: IO.open in core/io.rb:791 (+83)
0x7fffeffef990: RbReadline._rl_read_init_file in /home/benny/.rubies/rbx/gems/gems/rb-readline-0.5.3/lib/rbreadline.rb:2119 (+40)
0x7fffefff0020: RbReadline.rl_read_init_file in /home/benny/.rubies/rbx/gems/gems/rb-readline-0.5.3/lib/rbreadline.rb:2099 (+60)
0x7fffefff0680: RbReadline.readline_initialize_everything in /home/benny/.rubies/rbx/gems/gems/rb-readline-0.5.3/lib/rbreadline.rb:2528 (+91)
0x7fffefff0cb0: RbReadline.rl_initialize in /home/benny/.rubies/rbx/gems/gems/rb-readline-0.5.3/lib/rbreadline.rb:3804 (+18)
0x7fffefff12f0: RbReadline.readline in /home/benny/.rubies/rbx/gems/gems/rb-readline-0.5.3/lib/rbreadline.rb:4823 (+32)
0x7fffefff1950: Readline#readline in /home/benny/.rubies/rbx/gems/gems/rb-readline-0.5.3/lib/readline.rb:45 (+94)
0x7fffefff1ff0: IRB::ReadlineInputMethod#gets in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/input-method.rb:152 (+32)
0x7fffefff2650: __block__ in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/rubysl/irb/irb.rb:472 (+6)
0x7fffefff2ca0: IRB::Irb#signal_status in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/rubysl/irb/irb.rb:624 (+35)
0x7fffefff3300: __block__ in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/rubysl/irb/irb.rb:471 (+9)
0x7fffefff3a10: Proc#call in core/proc.rb:0 (+198)
0x7fffefff40a0: RubyLex#buf_input in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/ruby-lex.rb:190 (+7)
0x7fffefff46f0: RubyLex#getc in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/ruby-lex.rb:105 (+8)
0x7fffefff4d40: IRB::SLex::Node#match_io in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/slex.rb:206 (+24)
0x7fffefff53f0: IRB::SLex#match in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/slex.rb:76 (+65)
0x7fffefff5a60: RubyLex#token in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/ruby-lex.rb:290 (+28)
0x7fffefff60d0: RubyLex#lex in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/ruby-lex.rb:266 (+2)
0x7fffefff6720: __block__ in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/ruby-lex.rb:237 (+16)
0x7fffefff6d80: Kernel#loop in core/kernel.rb:590 (+29)
0x7fffefff73e0: __block__ in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/ruby-lex.rb:233 (+7)
0x7fffefff7af0: Proc#call in core/proc.rb:0 (+198)
0x7fffefff8290: __block__ in core/kernel.rb:1072 (+11)
0x7fffefff88c0: Rubinius::ThrownValue.register in core/throw_catch.rb:8 (+52)
0x7fffefff8f30: Kernel#catch in core/kernel.rb:1071 (+56)
0x7fffefff95a0: RubyLex#each_top_level_statement in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/irb/ruby-lex.rb:232 (+12)
0x7fffefff9be0: IRB::Irb#eval_input in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/rubysl/irb/irb.rb:488 (+27)
0x7fffefffa220: __block__ in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/rubysl/irb/irb.rb:397 (+5)
0x7fffefffa920: Proc#call in core/proc.rb:0 (+198)
0x7fffefffb0c0: __block__ in core/kernel.rb:1072 (+11)
0x7fffefffb6f0: Rubinius::ThrownValue.register in core/throw_catch.rb:8 (+52)
0x7fffefffbd60: Kernel#catch in core/kernel.rb:1071 (+56)
0x7fffefffc3d0: IRB.start in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/lib/rubysl/irb/irb.rb:396 (+186)
0x7fffefffca50: Object#__script__ in /home/benny/.rubies/rbx/gems/gems/rubysl-irb-2.1.1/bin/irb:12 (+26)
0x7fffefffd160: Kernel#load in core/kernel.rb:577 (+56)
0x7fffefffd7e0: Object#__script__ in /home/benny/.rubies/rbx/gems/bin/irb:22 (+136)
0x7fffefffdf30: Kernel#load in core/kernel.rb:577 (+56)
0x7fffefffe5b0: Rubinius::Loader#repl in core/loader.rb:719 (+57)
0x7fffefffec10: Rubinius::Loader#main in core/loader.rb:863 (+67)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment