Project

General

Profile

Bug #2667 » gdb.txt

backtrace and registers from gdb - Philippe (Philippe Latulippe), 03/14/2010 09:53 AM

 
(gdb) handle SIG33 pass nostop noprint
Signal Stop Print Pass to program Description
SIG33 No No Yes Real-time event 33
(gdb) set pagination 0
(gdb) run
Starting program: /usr/bin/ruby
[Thread debugging using libthread_db enabled]
[New Thread 0xb7f5b6c0 (LWP 6450)]
[New Thread 0xb7cd9b90 (LWP 6453)]
: compile/should not be reached: compile.c:473

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7f5b6c0 (LWP 6450)]
0x080fd3e8 in iseq_setup (iseq=0x8b03de0, anchor=0xbfedd1ac) at compile.c:1872
1872 const int do_peepholeopt = iseq->compile_data->option->peephole_optimization;
(gdb) backtrace full
#0 0x080fd3e8 in iseq_setup (iseq=0x8b03de0, anchor=0xbfedd1ac) at compile.c:1872
No locals.
#1 0x08107961 in rb_iseq_compile_node (self=144961012, node=0x8a47524) at compile.c:500
ret_body__ = {anchor = {type = 0, next = 0x8afb108, prev = 0x0}, last = 0x8afb108}
iseq = (rb_iseq_t *) 0x8b03de0
#2 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a47524, name=144961040, filename=145012028, line_no=229, parent=0, type=5, bopt=0, option=0xbfede184) at iseq.c:337
iseq = (rb_iseq_t *) 0x8b03de0
self = 144961012
#3 0x080fe11a in new_child_iseq (iseq=0x8b008b8, node=0xbfedd1ac, name=3220033964, parent=0, type=5, line_no=114) at compile.c:915
ret = <value optimized out>
#4 0x08100731 in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=<value optimized out>, poped=1) at compile.c:4538
iseqval = <value optimized out>
rb_intern_id_cache = 0
#5 0x080fe51d in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=<value optimized out>, poped=0) at compile.c:2964
rb_intern_id_cache = 0
#6 0x08107ea0 in rb_iseq_compile_node (self=144964288, node=0x8a407e0) at compile.c:448
ret_body__ = {anchor = {type = 0, next = 0x8b00504, prev = 0x0}, last = 0x8b038d0}
iseq = (rb_iseq_t *) 0x8b008b8
#7 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a407e0, name=144964316, filename=145012028, line_no=39, parent=144965156, type=9, bopt=0, option=0xbfede184) at iseq.c:337
iseq = (rb_iseq_t *) 0x8b008b8
self = 144964288
#8 0x080fe11a in new_child_iseq (iseq=0x8affbb0, node=0xbfedd1ac, name=3220033964, parent=144965156, type=9, line_no=19) at compile.c:915
ret = <value optimized out>
#9 0x08101018 in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=<value optimized out>, poped=1) at compile.c:4606
iseqval = <value optimized out>
rb_intern_id_cache = 0
#10 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=<value optimized out>, poped=1) at compile.c:2964
rb_intern_id_cache = 0
#11 0x080fee3f in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=<value optimized out>, poped=1) at compile.c:2988
cond_seq_body__ = {anchor = {type = 0, next = 0x8b00050, prev = 0x0}, last = 0x8b000c4}
then_label = (LABEL *) 0x8afffd0
else_label = (LABEL *) 0x8affff0
then_seq_body__ = {anchor = {type = 0, next = 0x8b000e8, prev = 0x0}, last = 0x8b0019c}
else_seq_body__ = {anchor = {type = 0, next = 0x0, prev = 0x0}, last = 0xbfedde30}
end_label = (LABEL *) 0x8b00010
rb_intern_id_cache = 0
#12 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=<value optimized out>, poped=0) at compile.c:2964
rb_intern_id_cache = 0
#13 0x08107c85 in rb_iseq_compile_node (self=144965156, node=0x8a3fe5c) at compile.c:459
ret_body__ = {anchor = {type = 0, next = 0x8affca4, prev = 0x0}, last = 0x8affe7c}
iseq = (rb_iseq_t *) 0x8affbb0
#14 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a3fe5c, name=144965184, filename=145012028, line_no=1, parent=0, type=3, bopt=0, option=0xbfede184) at iseq.c:337
iseq = (rb_iseq_t *) 0x8affbb0
self = 144965156
#15 0x0810c096 in rb_iseq_compile_with_option (src=145012000, file=145012028, line=1, opt=4) at iseq.c:486
option = {inline_const_cache = 1, peephole_optimization = 1, tailcall_optimization = 0, specialized_instruction = 1, operands_unification = 0, instructions_unification = 0, stack_caching = 0, trace_instruction = 1, debug_level = 0}
node = (NODE *) 0x8a3fe5c
th = (rb_thread_t *) 0x8a3ea98
#16 0x0810c1a7 in rb_iseq_compile (src=145012000, file=145012028, line=1) at iseq.c:494
No locals.
#17 0x08123f01 in Init_prelude () at prelude.c:434
No locals.
#18 0x080ceed5 in process_options (arg=3220042532) at ruby.c:1061
opt = (struct cmdline_options *) 0xbfedf2b8
argc = <value optimized out>
argv = (char **) 0xbfedf4d8
tree = <value optimized out>
parser = 145022360
iseq = <value optimized out>
enc = <value optimized out>
lenc = (rb_encoding *) 0x8a870b0
fbuf = "t???\001\000\000\000\001", '\0' <repeats 11 times>, "\002\000\000\000????", '\0' <repeats 32 times>, "\001\000\000\000\230\207?\b(\210?\b", '\0' <repeats 40 times>, "\001\000\000\000\230\207?\b(\210?\b\002\000\000\000????", '\0' <repeats 24 times>, "\b????i\f\b˿?\bۿ?\b(q?\b\002\000\000\000????\000\000\000\000\000\000\000\000\030", '\0' <repeats 76 times>, "\001\001", '\0' <repeats 30 times>, "\001\001", '\0' <repeats 149 times>, "t????\205?\b?????\224\v\bt???\000\000\000\000\f\000\000\000?x?\b\017\000\000\000\000\000\000\000"...
i = 1
th = (rb_thread_t *) 0x8a3ea98
env = <value optimized out>
rb_intern_id_cache = 0
#19 0x0810fa5b in rb_vm_call_cfunc (recv=145225080, func=0x80cec10 <process_options>, arg=3220042532, blockptr=0x0, filename=145030872) at vm.c:1381
th = (rb_thread_t *) 0x8a3ea98
reg_cfp = <value optimized out>
iseqval = 145030844
val = 224
#20 0x080cd0fd in ruby_process_options (argc=1, argv=0xbfedf4d4) at ruby.c:1815
args = {argc = 1, argv = 0xbfedf4d4, opt = 0xbfedf2b8}
opt = {sflag = 0, xflag = 0, do_loop = 0, do_print = 0, do_check = 0, do_line = 0, do_split = 0, do_search = 0, usage = 0, version = 0, copyright = 0, disable = 0, verbose = 0, yydebug = 0, safe_level = 0, setids = 0, dump = 0, script = 0x8a4fe38 "-", script_name = 145030704, e_script = 0, src = {enc = {name = 0, index = -1}}, ext = {enc = {name = 0, index = -1}}, intern = {enc = {name = 0, index = -1}}, req_list = 0}
#21 0x0805b61b in ruby_options (argc=1, argv=0xbfedf4d4) at eval.c:89
_th = (rb_thread_t * const) 0x8a3ea98
_tag = {buf = {{__jmpbuf = {-1074924464, 6007968, 0, -1074924536, -1258472158, 51739535}, __mask_was_saved = 0, __saved_mask = {__val = {0, 0, 0, 144959320, 0, 0, 0, 0, 7414496, 2147483648, 1, 0, 0, 0, 0, 2097152, 0, 3220042712, 6864008, 10485760, 3220042696, 5, 4294967295, 0, 0, 3220042760, 135398729, 10485760, 0, 5, 0, 10485760}}}}, tag = 0, retval = 0, prev = 0x0}
state = 0
tree = (void *) 0x0
#22 0x080595f8 in main (argc=1, argv=0xbfedf4d4) at main.c:35
variable_in_this_stack_frame = 7348212
(gdb) info registers
eax 0xe0 224
ecx 0xbfedd1ac -1074933332
edx 0xbfedd1ac -1074933332
ebx 0x8a3edf4 144961012
esp 0xbfedd0e0 0xbfedd0e0
ebp 0xbfedd168 0xbfedd168
esi 0x8b03de0 145767904
edi 0x8a47524 144995620
eip 0x80fd3e8 0x80fd3e8 <iseq_setup+24>
eflags 0x10282 [ SF IF RF ]
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x0 0
gs 0x33 51
(gdb) x/16i $pc
0x80fd3e8 <iseq_setup+24>: mov 0x4(%eax),%ecx
0x80fd3eb <iseq_setup+27>: mov 0x8(%eax),%ebx
0x80fd3ee <iseq_setup+30>: mov 0xc(%eax),%eax
0x80fd3f1 <iseq_setup+33>: mov %ecx,-0x5c(%ebp)
0x80fd3f4 <iseq_setup+36>: mov %ebx,-0x58(%ebp)
0x80fd3f7 <iseq_setup+39>: mov %eax,-0x60(%ebp)
0x80fd3fa <iseq_setup+42>: mov -0x68(%ebp),%eax
0x80fd3fd <iseq_setup+45>: call 0x80fc850 <FIRST_ELEMENT>
0x80fd402 <iseq_setup+50>: test %eax,%eax
0x80fd404 <iseq_setup+52>: mov %eax,%esi
0x80fd406 <iseq_setup+54>: jne 0x80fd417 <iseq_setup+71>
0x80fd408 <iseq_setup+56>: jmp 0x80fdb3a <iseq_setup+1898>
0x80fd40d <iseq_setup+61>: lea 0x0(%esi),%esi
0x80fd410 <iseq_setup+64>: mov 0x4(%esi),%esi
0x80fd413 <iseq_setup+67>: test %esi,%esi
0x80fd415 <iseq_setup+69>: je 0x80fd475 <iseq_setup+165>
(gdb) thread apply all backtrace

Thread 2 (Thread 0xb7cd9b90 (LWP 6453)):
#0 0x00119402 in __kernel_vsyscall ()
#1 0x00719b51 in __lll_mutex_unlock_wake () from /lib/libpthread.so.0
#2 0x00716889 in _L_mutex_unlock_101 () from /lib/libpthread.so.0
#3 0x007164f0 in __pthread_mutex_unlock_usercnt () from /lib/libpthread.so.0
#4 0x00717433 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#5 0x0811e613 in thread_timer (dummy=0x0) at thread_pthread.c:122
#6 0x0071345b in start_thread () from /lib/libpthread.so.0
#7 0x00693e5e in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb7f5b6c0 (LWP 6450)):
#0 0x080fd3e8 in iseq_setup (iseq=0x8b03de0, anchor=0xbfedd1ac) at compile.c:1872
#1 0x08107961 in rb_iseq_compile_node (self=144961012, node=0x8a47524) at compile.c:500
#2 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a47524, name=144961040, filename=145012028, line_no=229, parent=0, type=5, bopt=0, option=0xbfede184) at iseq.c:337
#3 0x080fe11a in new_child_iseq (iseq=0x8b008b8, node=0xbfedd1ac, name=3220033964, parent=0, type=5, line_no=114) at compile.c:915
#4 0x08100731 in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=<value optimized out>, poped=1) at compile.c:4538
#5 0x080fe51d in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=<value optimized out>, poped=0) at compile.c:2964
#6 0x08107ea0 in rb_iseq_compile_node (self=144964288, node=0x8a407e0) at compile.c:448
#7 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a407e0, name=144964316, filename=145012028, line_no=39, parent=144965156, type=9, bopt=0, option=0xbfede184) at iseq.c:337
#8 0x080fe11a in new_child_iseq (iseq=0x8affbb0, node=0xbfedd1ac, name=3220033964, parent=144965156, type=9, line_no=19) at compile.c:915
#9 0x08101018 in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=<value optimized out>, poped=1) at compile.c:4606
#10 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=<value optimized out>, poped=1) at compile.c:2964
#11 0x080fee3f in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=<value optimized out>, poped=1) at compile.c:2988
#12 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=<value optimized out>, poped=0) at compile.c:2964
#13 0x08107c85 in rb_iseq_compile_node (self=144965156, node=0x8a3fe5c) at compile.c:459
#14 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a3fe5c, name=144965184, filename=145012028, line_no=1, parent=0, type=3, bopt=0, option=0xbfede184) at iseq.c:337
#15 0x0810c096 in rb_iseq_compile_with_option (src=145012000, file=145012028, line=1, opt=4) at iseq.c:486
#16 0x0810c1a7 in rb_iseq_compile (src=145012000, file=145012028, line=1) at iseq.c:494
#17 0x08123f01 in Init_prelude () at prelude.c:434
#18 0x080ceed5 in process_options (arg=3220042532) at ruby.c:1061
#19 0x0810fa5b in rb_vm_call_cfunc (recv=145225080, func=0x80cec10 <process_options>, arg=3220042532, blockptr=0x0, filename=145030872) at vm.c:1381
#20 0x080cd0fd in ruby_process_options (argc=1, argv=0xbfedf4d4) at ruby.c:1815
#21 0x0805b61b in ruby_options (argc=1, argv=0xbfedf4d4) at eval.c:89
#22 0x080595f8 in main (argc=1, argv=0xbfedf4d4) at main.c:35
    (1-1/1)