This is the mail archive of the
gdb-prs@sources.redhat.com
mailing list for the GDB project.
gdbMI/796: gdb/mi misbehaving after an error(-data-disassemble)
- From: alain at qnx dot com
- To: gdb-gnats at sources dot redhat dot com
- Date: 10 Oct 2002 16:04:59 -0000
- Subject: gdbMI/796: gdb/mi misbehaving after an error(-data-disassemble)
- Reply-to: alain at qnx dot com
>Number: 796
>Category: gdbMI
>Synopsis: gdb/mi misbehaving after an error(-data-disassemble)
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Oct 10 09:08:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: alain@qnx.com
>Release: unknown-1.0
>Organization:
>Environment:
gdb-5.2.1
GNU/Linux
>Description:
gdb/mi goes to a funky state, some of the states:
- the next output can be garbage
-data-disassemble -s 0x080484d2 -e 0x080484e3 -- 0
^done,asm_insns=[{address="0x007acf6c",asm_insns=[{address="0x080484d2",func-name="main",offset="10",inst="mov 0x8048598,%eax"},{address="0x080484d7",func-name="main",offset="15",inst="mov %eax,0xfffffc08(%ebp)"},{address="0x080484dd",func-name="main",offset="21",inst="mov 0x804859c,%ax"}]
In this case it looks like the previous buffer was not flush.
- it ask if it should core an internal error.
-data-disassemble -s 0x080484d2 -e 0x080484e3 -- 0
&"ui-out.c:133: gdb-internal-error: push_level: Assertion `uiout->level >= 0 && uiout->level < MAX_UI_OUT_LEVELS' failed.\n"
~"An internal GDB error was detected. This may make further\n"
~"debugging unreliable. Quit this debugging session? (y or n) "
- behave normaly, it works just fine 8-)
Unfortunately, this is random, but I did capture a tracelog
after a debug session, hope it will be usefull.
The annoying thing is, I could not come up with a repetive
test case 8-(
===== Log trace =====
-data-disassemble -s 80484d2 -e 80484e3 -- 0
&"Invalid number \"80484d2\".\n"
^error,msg="Invalid number \"80484d2\"."
(gdb)
-data-disassemble -s 8048492 -e 8048499 -- 0
&"Cannot access memory at address 0x7acf6c\n"
^error,msg="Cannot access memory at address 0x7acf6c"
(gdb)
-data-disassemble -s 0x080484d2 -e 0x080484e3 -- 0
^done,asm_insns=[{address="0x007acf6c",asm_insns=[{address="0x080484d2",func-name="main",offset="10",inst="mov 0x8048598,%eax"},{address="0x080484d7",func-name="main",offset="15",inst="mov %eax,0xfffffc08(%ebp)"},{address="0x080484dd",func-name="main",offset="21",inst="mov 0x804859c,%ax"}]
(gdb)
-data-disassemble -s 0x080484d2 -e 0x080484e3 -- 0
^done,asm_insns=[{address="0x080484d2",func-name="main",offset="10",inst="mov 0x8048598,%eax"},{address="0x080484d7",func-name="main",offset="15",inst="mov %eax,0xfffffc08(%ebp)"},{address="0x080484dd",func-name="main",offset="21",inst="mov 0x804859c,%ax"}]
(gdb)
-data-disassemble -s 0x080484d2 -e 0x080484e3 -- 0
^done,asm_insns=[{address="0x080484d2",func-name="main",offset="10",inst="mov 0x8048598,%eax"},{address="0x080484d7",func-name="main",offset="15",inst="mov %eax,0xfffffc08(%ebp)"},{address="0x080484dd",func-name="main",offset="21",inst="mov 0x804859c,%ax"}]
(gdb)
-data-disassemble -s 8048492 -e 8048499 -- 0
&"Cannot access memory at address 0x7acf6c\n"
^error,msg="Cannot access memory at address 0x7acf6c"
(gdb)
-data-disassemble -s 0x080484d2 -e 0x080484e3 -- 0
&"ui-out.c:133: gdb-internal-error: push_level: Assertion `uiout->level >= 0 && uiout->level < MAX_UI_OUT_LEVELS' failed.\n"
~"An internal GDB error was detected. This may make further\n"
~"debugging unreliable. Quit this debugging session? (y or n) "
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: