How to disable GDB backtrace new behavior of including disassembly in backtrace ?

William Tambe tambewilliam@gmail.com
Wed Dec 25 20:19:00 GMT 2019


On Wed, Dec 25, 2019 at 2:51 PM Bernd Edlinger
<bernd.edlinger@hotmail.de> wrote:
>
> On 2019-12-13 7:09 a.m., William Tambe wrote:
> > How to disable GDB backtrace new behavior of including disassembly in
> > backtrace ?
> >
> > I have built GDB 8.3 and here is an example of output that I now see:
> >
> > bt
> > #0  0x0005ed42 in set_next_entity (se=<optimized out>,
> > cfs_rq=<optimized out>) at /linux/kernel/sched/fair.c:6844
> >    0x0005ed38 <pick_next_task_fair+492>:        80 74   li8 %7, 0x4 # 4
> >    0x0005ed3a <pick_next_task_fair+494>:        b8 70   add %7, %sp
> >    0x0005ed3c <pick_next_task_fair+496>:        ea 37   ld32 %3, %7
> >    0x0005ed3e <pick_next_task_fair+498>:        c7 13   cpy %1, %3
> >    0x0005ed40 <pick_next_task_fair+500>:        92 10   inc8 %1, 32 # 0x20
> > => 0x0005ed42 <pick_next_task_fair+502>:        ea 11   ld32 %1, %1
> >    0x0005ed44 <pick_next_task_fair+504>:        ea 50   ld32 %5, %sp
> >    0x0005ed46 <pick_next_task_fair+506>:        e0 d0   gip %sr
> >    0x0005ed48 <pick_next_task_fair+508>:        a2 d0 4e 00 00 00
> >  inc32 %sr, 78 # 0x4e
> >    0x0005ed4e <pick_next_task_fair+514>:        d1 1d   jnz %1, %sr
> > #1  pick_next_task_fair (rq=<optimized out>, prev=<optimized out>,
> > rf=<optimized out>) at /linux/kernel/sched/fair.c:6844
> >
> > Using an earlier version of GDB would have just shown two lines
> > without disassembly; ie:
> >
> > bt
> > #0  0x0005ed42 in set_next_entity (se=<optimized out>,
> > cfs_rq=<optimized out>) at /linux/kernel/sched/fair.c:6844
> > #1  pick_next_task_fair (rq=<optimized out>, prev=<optimized out>,
> > rf=<optimized out>) at /linux/kernel/sched/fair.c:6844
> >
> > How can I restore the GDB old behavior when using backtrace ?
> >
>
> do you have "set disassemble-next-line on" ?

Yes.
(gdb) show disassemble-next-line
Debugger's willingness to use disassemble-next-line is on.

> what is your setting of "show print frame-info" ?

(gdb) show print frame-info
Printing of frame information is "auto".

> I believe that previously this setting was only used in bt when
> set print frame-info source-line / source-and-location
>
> Not sure if that was changed intentionally or not, it seems as if
> this commit moved the do_gdb_disassemble out of the
> "if (source_print && sal.symtab)" block, see:
>
> commit ec8e2b6d3051f0b4b2a8eee9917898e95046c62f
> Author: Andrew Burgess <andrew.burgess@embecosm.com>
> Date:   Fri Jun 14 23:43:00 2019 +0100
>
>     gdb: Don't allow annotations to influence what else GDB prints
>
>

If I use:

(gdb) set disassemble-next-line auto
or
(gdb) set disassemble-next-line off

then I no longer see this problem with the command backtrace.

>
>
> Bernd.
>



More information about the Gdb-patches mailing list