This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug gdb/18074] New: crash using "info frame"


https://sourceware.org/bugzilla/show_bug.cgi?id=18074

            Bug ID: 18074
           Summary: crash using "info frame"
           Product: gdb
           Version: HEAD
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gdb
          Assignee: unassigned at sourceware dot org
          Reporter: tromey at sourceware dot org

The firefox jit compiler makes stack frames that aren't
unwindable by gdb.

I was trying to unwind one by hand and happened to use "info frame"
with an address argument.  gdb crashed.

I'm using a git master gdb from today on x86-64 Fedora 20.


(gdb) info frame 0x7fffffffdac0
Stack frame at 0x7fffffffdac0:
 rip = 0x0; saved rip = 0x7ffff00517cc
 Outermost frame: previous frame identical to this frame (corrupt stack?)
 Arglist at 0x7fffffffda78, args: 
 Locals at 0x7fffffffda78, Previous frame's sp is 0x7fffffffda88
../../binutils-gdb/gdb/value.c:3818: internal-error: value_fetch_lazy:
Assertion `frame != NULL' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) 

Here's the stack trace:

#0  0x00007f6a0e8d3700 in __poll_nocancel ()
    at ../sysdeps/unix/syscall-template.S:81
#1  0x00000000005c35ef in gdb_wait_for_event (block=block@entry=1)
    at ../../binutils-gdb/gdb/event-loop.c:696
#2  0x00000000005c3c22 in gdb_do_one_event ()
    at ../../binutils-gdb/gdb/event-loop.c:309
#3  0x0000000000688cd7 in gdb_readline_wrapper (
    prompt=prompt@entry=0x3184740 "../../binutils-gdb/gdb/value.c:3818:
internal-error: value_fetch_lazy: Assertion `frame != NULL' failed.\nA problem
internal to GDB has been detected,\nfurther debugging may prove
unreliable.\nQuit this "...) at ../../binutils-gdb/gdb/top.c:842
#4  0x000000000068ca66 in defaulted_query (ctlstr=<optimized out>, 
    defchar=defchar@entry=0 '\000', args=args@entry=0x7fff2f3d1988)
    at ../../binutils-gdb/gdb/utils.c:1279
#5  0x000000000068ccce in query (ctlstr=<optimized out>)
    at ../../binutils-gdb/gdb/utils.c:1375
#6  0x000000000068cf6a in internal_vproblem (
    problem=problem@entry=0xa12a00 <internal_error_problem>, 
    file=<optimized out>, line=3818, fmt=<optimized out>, 
    ap=ap@entry=0x7fff2f3d1ab8) at ../../binutils-gdb/gdb/utils.c:746
#7  0x000000000068d0b9 in internal_verror (file=<optimized out>, 
    line=<optimized out>, fmt=<optimized out>, ap=ap@entry=0x7fff2f3d1ab8)
    at ../../binutils-gdb/gdb/utils.c:811
#8  0x00000000006be452 in internal_error (
    file=file@entry=0x811690 "../../binutils-gdb/gdb/value.c", 
    line=line@entry=3818, fmt=<optimized out>)
    at ../../binutils-gdb/gdb/common/errors.c:55
#9  0x000000000056838c in value_fetch_lazy (val=val@entry=0x498ed70)
    at ../../binutils-gdb/gdb/value.c:3818
#10 0x0000000000568b28 in value_optimized_out (value=value@entry=0x498ed70)
    at ../../binutils-gdb/gdb/value.c:1351
#11 0x0000000000692213 in frame_register_unwind (frame=frame@entry=0xe82300, 
    regnum=regnum@entry=0, optimizedp=optimizedp@entry=0x7fff2f3d1cf4, 
    unavailablep=unavailablep@entry=0x7fff2f3d1cf8, 
    lvalp=lvalp@entry=0x7fff2f3d1cf0, addrp=addrp@entry=0x7fff2f3d1d08, 
    realnump=realnump@entry=0x7fff2f3d1cfc, bufferp=bufferp@entry=0x0)
    at ../../binutils-gdb/gdb/frame.c:1020
#12 0x00000000005b6043 in frame_info (addr_exp=<optimized out>, 
    from_tty=<optimized out>) at ../../binutils-gdb/gdb/stack.c:1676
#13 0x00000000006889ed in execute_command (p=<optimized out>, 
    p@entry=0xdcb1a0 "info frame 0x7fffffffdac0", from_tty=1)
    at ../../binutils-gdb/gdb/top.c:476
#14 0x00000000005c4a01 in command_handler (
    command=0xdcb1a0 "info frame 0x7fffffffdac0")
    at ../../binutils-gdb/gdb/event-top.c:494
#15 0x00000000005c4f5c in command_line_handler (rl=<optimized out>)
    at ../../binutils-gdb/gdb/event-top.c:692
#16 0x00000000006d9710 in rl_callback_read_char ()
    at ../../binutils-gdb/readline/callback.c:220
#17 0x00000000005c4a69 in rl_callback_read_char_wrapper (
    client_data=<optimized out>) at ../../binutils-gdb/gdb/event-top.c:171
#18 0x00000000005c4ab3 in stdin_event_handler (error=<optimized out>, 
    client_data=0x0) at ../../binutils-gdb/gdb/event-top.c:432
#19 0x00000000005c39f9 in gdb_wait_for_event (block=block@entry=0)
    at ../../binutils-gdb/gdb/event-loop.c:772
#20 0x00000000005c3bf0 in gdb_do_one_event ()
    at ../../binutils-gdb/gdb/event-loop.c:284
#21 0x00000000005c3ca7 in start_event_loop ()
    at ../../binutils-gdb/gdb/event-loop.c:334
#22 0x00000000005bda53 in captured_command_loop (data=data@entry=0x0)
    at ../../binutils-gdb/gdb/main.c:321
#23 0x00000000005bac95 in catch_errors (
    func=func@entry=0x5bda40 <captured_command_loop>, 
    func_args=func_args@entry=0x0, errstring=errstring@entry=0x7967a0 "", 
    mask=mask@entry=RETURN_MASK_ALL) at ../../binutils-gdb/gdb/exceptions.c:235
#24 0x00000000005be9ae in captured_main (data=data@entry=0x7fff2f3d2110)
    at ../../binutils-gdb/gdb/main.c:1148
#25 0x00000000005bac95 in catch_errors (
    func=func@entry=0x5bdf60 <captured_main>, 
    func_args=func_args@entry=0x7fff2f3d2110, 
    errstring=errstring@entry=0x7967a0 "", mask=mask@entry=RETURN_MASK_ALL)
    at ../../binutils-gdb/gdb/exceptions.c:235
#26 0x00000000005bee5b in gdb_main (args=args@entry=0x7fff2f3d2110)
    at ../../binutils-gdb/gdb/main.c:1156
#27 0x0000000000463835 in main (argc=<optimized out>, argv=<optimized out>)
    at ../../binutils-gdb/gdb/gdb.c:32

-- 
You are receiving this mail because:
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]